Fujitsu recently posted a new TPC-E benchmark result of 3777.08 for SQL Server 2014, using a two-socket server with the 18-core, 22nm Intel Xeon E5-2699 v3 (Haswell-EP) processor. This is the highest ever actual TPC-E score for a two-socket server, which sounds quite impressive on the surface.
One thing that I have been doing for years is to take the actual, raw TPC-E score, and divide it by the number of physical cores in the system (which is how SQL Server 2012/2014 is licensed on physical servers) to come up with a “Score/Core” figure as shown in Table 1. This simple calculation helps you evaluate the single-threaded performance of a particular processor, which is very relevant for OLTP workloads. Looking at the TPC-E results like this, the Intel Xeon E5-2699 v3 comes in at seventh place on the TPC-E Single-Threaded Performance Leaderboard. Why is this?
The server vendors (who put together these official TPC-E submissions) will always use the “top of the line” processor for a particular model server for one of these benchmark efforts. This top-level SKU is going to have the highest core count available from a particular CPU family and generation. Unfortunately, the highest core count processors from a particular CPU family and generation will run at lower base and turbo clock speeds than the lower core count, “frequency optimized” models from that same CPU family and generation. This means that the Score/Core result tends to decrease as the number of cores increases. This is partially offset by the architectural improvements that are added to each new generation processor, but those improvements usually don’t make up completely for the lower clock speeds.
So what relevance does this have for the average database professional?
Well, think about how much it would cost to purchase 36 processor core licenses for SQL Server 2014 Enterprise Edition. The answer is about $247,392.00, which is about ten times what a fully-loaded two-socket server would cost. If you were to choose the eight-core Intel Xeon E5-2667 v3 processor, with its much higher 3.2GHz base clock speed, it would only cost about $109,952.00 for the SQL Server 2014 licenses. You would also get probably 30-35% better single-threaded performance than with the 18-core model, while losing perhaps 35-40% of your total processor capacity.
If you are worried about total capacity, you could even buy a second server (if you could split your workload), and save enough on the license costs (32 core licenses vs. 36 core licenses) to pay for the second server. If you did this, you would have more total processor capacity, double the RAM, and much better OLTP performance. Remember, the actual raw TPC-E score is a gauge of the total processor capacity of the system, while the Score/Core helps you evaluate single-threaded processor performance.
I really wish the server vendors would take the relatively easy and inexpensive step of testing their benchmark configurations with different model processors. Once they had everything setup and tuned for the high-core count flagship processor, they could simply repeat the test runs and validation process for some of the more interesting lower core count “frequency optimized” processor models, and submit those results. TPC could help by listing the Score/Core results for all of the TPC-E benchmark submissions.
|1881.76||117.61||HP ProLiant DL380p Gen8||Intel Xeon E5-2690||16||2|
|1871.81||116.99||PRIMERGY RX300 S7||Intel Xeon E5-2690||16||2|
|1863.23||116.45||IBM System x3650 M4||Intel Xeon E5-2690||16||2|
|2590.93||108||IBM System x3650 M4||Intel Xeon E5-2697 v2||24||2|
|1284.14||107.01||HP ProLiant DL380 G7 Server||Intel Xeon X5690||12||2|
|1268.3||105.69||PRIMERGY RX300 S6 12×2.5||Intel Xeon X5690||12||2|
|3777.08||104.92||PRIMERGY RX2540 M1||Intel Xeon E5-2699 v3||36||2|
|1246.13||103.84||PRIMERGY RX300 S6||Intel Xeon X5680||12||2|
|2472.58||103.02||PRIMERGY RX300 S8||Intel Xeon E5-2697 v2||24||2|
|817.15||102.14||IBM System x3650 M2||Intel Xeon X5570||8||2|
Table 1: TPC-E Single-Threaded Performance Leaderboard