SQL Server 2014 Service Pack 1 CU7

On June 20, 2016, Microsoft released SQL Server 2014 Service Pack 1 CU7, which is Build 12.0.4459. This cumulative update has 35 fixes in the public hot fix list. Quite a few of these fixes seem to be pretty significant.

They also released SQL Server 2014 RTM CU14, which is Build 12.0.2569. This cumulative update has 21 fixes in public hot fix list. This is the last CU for the RTM branch.

SQL Server 2014 Service Pack 2 is due to be released in July of 2016, so depending on how old of a build of SQL Server 2014 you are on, you might just want to wait for SP2. Otherwise, I think you should try to stay on a current CU, in a proactive fashion. Microsoft recently changed their official guidance about installing CUs, as you can read about here.

More Intel Broadwell Server Processor Families Available

Back on March 31, 2016 (the last day of Q1 2016), Intel released the 14nm Xeon E5-2600 v4 Product Family (Broadwell-EP), which is currently the highest single-threaded performance product family for two-socket servers. You can read about some of the specific enhancements in this family in this document: Intel® Xeon® Processor E5-2600 V4 Product Family Technical Overview. These processors are socket compatible with the previous Haswell-EP family, so they work with (and are currently available for) existing server models from all of the major server vendors.

If you are going to purchase a new Xeon E5-2600 v4 system (which I think is the best choice for most people), then the model numbers shown in Table 1 are your best choices for SQL Server usage, for each physical core count. The eight-core Xeon E5-2667 v4, the six-core Xeon E5-2643 v4 and the four-core Xeon E5-2637 v4 are the “frequency-optimized” models that would be my preferred choices in most situations for SQL Server usage.

 

ModelCores/L3 CacheBase ClockTurbo ClockPrice
Xeon E5-2699 v422/55MB2.20 GHz3.60 GHz$4,115.00
Xeon E5-2698 v420/50MB2.20 GHz3.60 GHz$3,226.00
Xeon E5-2697 v418/45MB2.30 GHz3.60 GHz$2,702.00
Xeon E5-2697A v416/40MB2.60 GHz3.60 GHz$2,891.00
Xeon E5-2690 v414/35MB2.60 GHz3.50 GHz$2,090.00
Xeon E5-2687W v412/30MB3.00 GHz3.50 GHz$2,141.00
Xeon E5-2640 v410/25MB2.40 GHz3.40 GHz$939.00
Xeon E5-2667 v48/25MB3.20 GHz3.60 GHz$2,057.00
Xeon E5-2643 v46/20MB3.40 GHz3.70 GHz$1,552.00
Xeon E5-2637 v44/15MB3.50 GHz3.70 GHz$996.00

Table 1: Preferred Xeon E5-2600 v4 Family Processors (Broadwell-EP)

 

On June 6, 2016, Intel released the 14nm Xeon E7 v4 Product Family (Broadwell-EX), for four-socket and larger servers. These processors are also socket compatible with the previous Haswell-EX family, so they work with (and are currently available for) existing server models from all of the major server vendors. I have to admit that this quick release of the Xeon E7 v4 took me by surprise, since I was not expecting it until late 2016 or early 2017, based on Intel’s past release history. Typically, there is anywhere from a six to eighteen month delay between the release of a new generation Xeon E5-2600 processor family, and an equivalent generation Xeon E7 processor family.

If you are going to purchase a new Xeon E7 v4 system, then the model numbers shown in Table 2 are your best choices for SQL Server usage, for each physical core count. The eighteen-core Xeon E7-8867 v4, the ten-core Xeon E7-8891 v4 and the four-core Xeon E7-8893 v4 are the “frequency-optimized” models that would be my preferred choices in most situations for SQL Server usage.

 

ModelCores/L3 CacheBase ClockTurbo ClockPrice
Xeon E7-8890 v424/60MB2.20 GHz3.40 GHz$7,174.00
Xeon E7-8880 v422/55MB2.20 GHz3.30 GHz$5,895.00
Xeon E7-8870 v420/50MB2.10 GHz3.00 GHz$4,672.00
Xeon E7-8867 v418/45MB2.40 GHz3.30 GHz$4,672.00
Xeon E7-4850 v416/40MB2.10 GHz2.80 GHz$3,003.00
Xeon E7-4830 v414/35MB2.00 GHz2.80 GHz$2,170.00
Xeon E7-8891 v410/60MB2.80 GHz3.50 GHz$6,841.00
Xeon E7-4809 v48/20MB2.10 GHz2.10 GHz$1,223.00
Xeon E7-8893 v44/60MB3.20 GHz3.50 GHz$6,841.00

Table 2: Preferred Xeon E7 v4 Family Processors (Broadwell-EX)

 

On June 20, 2016, Intel released the 14nm Xeon E5-4600 v4 Product Family (Broadwell-EP), for four-socket servers, which was also somewhat of a surprise. To be honest, I am not a big fan of the E5-4600 v4 Family. The Xeon E5 is really meant for two-socket systems, and it does not seem to scale very well in a four-socket system. If you really need the higher total core counts and higher total memory limit that you would get from a Xeon E5-4600 v4 vs. a Xeon E5-2600 v4 system, I think you are better off to make the jump to a Xeon E7 v4 system (which will also get you more RAS features).

All of the Xeon E5-4600 v4 Family processors have relatively low base clock speeds, and the higher core count SKUs are actually quite expensive, basically in the same range as similar core count Xeon E7 v4 processors. If you really want a Xeon E5-4600 v4 system, then the model numbers shown in Table 3 are your best choices for SQL Server usage, for each physical core count. The ten-core Xeon E5-4627 v4 and eight-core Xeon E5-4655 v4 would be my preferred choices in most situations, since they are somewhat “frequency-optimized”, and have lower overall core counts, which will dramatically reduce your SQL Server 2016 licensing costs.

 

ModelCores/L3 CacheBase ClockTurbo ClockPrice
Xeon E5-4669 v422/55MB2.20 GHz3.00 GHz$7,007.00
Xeon E5-4667 v418/45MB2.20 GHz3.00 GHz$5,729.00
Xeon E5-4660 v416/40MB2.20 GHz3.00 GHz$4,727.00
Xeon E5-4650 v414/35MB2.20 GHz2.80 GHz$3,838.00
Xeon E5-4640 v412/30MB2.10 GHz2.60 GHz$2,837.00
Xeon E5-4627 v410/25MB2.60 GHz3.20 GHz$2,225.00
Xeon E5-4655 v48/30MB2.50 GHz3.20 GHz$4,616.00

Table 3: Preferred Xeon E5-4600 v4 Family Processors (Broadwell-EP)

In many situations, you would be much better off to get two, very fast Xeon E5-2600 v4 based two-socket database servers rather than one Xeon E7 v4 based four-socket database server, assuming you can split your workload across two database servers.

AES-NI Encryption Support in SQL Server 2016

Microsoft’s Bob Dorr has recently consolidated a series of CSS posts about many low-level performance improvements in SQL Server 2016. One of these posts, SQL 2016 – It Just Runs Faster – AlwaysOn AES-NI Encryption describes how SQL Server 2016 improved and simplified Endpoint creation for AlwaysOn AGs to default to AES, and to better leverage hardware support for AES-NI (when you are also running on Windows Server 2012 R2 or newer).

Intel describes AES-NI this way:

Intel AES New Instructions (Intel AES-NI) are a set of instructions that enable fast and secure data encryption and decryption. AES-NI are valuable for a wide range of cryptographic applications, for example: applications that perform bulk encryption/decryption, authentication, random number generation, and authenticated encryption.

Intel provides more complete documentation of AES here:

Intel Advanced Encryption Standard (Intel AES) Instructions Set

Now that we have a better idea of what AES-NI is, we need to know which server processors have AES-NI support. AES-NI was introduced with the 32nm Westmere microarchitecture. In the server space, this means the Intel Xeon 5600 product family (Westmere-EP) for two-socket servers and the Intel Xeon E7-4800/8800 product family (Westmere-EX) for four and eight-socket servers. Any newer Intel product family will also have AES-NI support.

These product families were released in Q1 2010 and Q2 2011 respectively, so they are both pretty old by modern standards. If you are planning to upgrade to SQL Server 2016, I would hope that you would use a new server with newer processors (ideally the latest 14nm Broadwell-EP or Broadwell-EX).

You can also use CPU-Z to confirm whether a particular processor has AES-NI support. Just to confuse things, CPU-Z displays AES-NI support as “AES”, which is the name of the broader standard. Figure 1 shows AES as one of the supported instructions for an Intel Xeon X5660 processor.

 

image

Figure 1: CPU-Z CPU Details for Intel Xeon X5650