For Day 12 of this series, I want to go through a common hardware upgrade scenario that I have been seeing quite a bit lately. Many people still have relatively ancient database servers (such as a Dell PowerEdge 1950 or 2950, or HP DL380 Gen 5) that are running either 65nm Conroe-based or 45nm Penryn-based processors. These 2006-2007 vintage processors were commonly known as Core2 Duo or Core2 Quad processors, and they were the last dual-socket capable Intel server processors to use SMP instead of NUMA. They do not have hyper-threading or Intel Turbo Boost. They were good processors in their day, but they are quite old now, and they offer much less performance and scalability than you will get from a modern processor. It is also very likely that a server running these processors is out of warranty (even with a warranty extension), and that it is running SQL Server 2005 on top of Windows Server 2003 R2, both of which are out of mainstream support from Microsoft.

Table 1: Comparing TPC-E Performance for Several Common Intel Processors

Two-socket servers (that can use the Xeon E5-2600 series “Sandy Bridge-EP” processors) will give you significantly better single-threaded processor performance than you can get from a four-socket server using either the older Xeon E7-4800 series “Westmere-EX”, or the newer Xeon E5-4600 series “Sandy Bridge-EP” four-socket processors. Bigger servers are not faster servers!

The Xeon E5-2690 has a significantly better TPC-E score per physical core than the other three processors. The Sandy Bridge-EP processor family does not seem to scale as well as you might expect as you move from a two-socket version (E5-2690) to a four-socket version (E5-4650). Sandy Bridge-EP also has PCI-E 3.0 support, while the older Westmere-EX only has PCI-E 2.0 support. Given the cost of SQL Server 2012 core licenses and the per-core performance differences we see on TPC-E, I would favor the Xeon E5-2690 over the Xeon E5-4650 or the Xeon E5-4870 for most OLTP workloads.