Analyzing TPC-E Benchmark Performance by Physical Processor Core

The TPC Benchmark E (TPC-E) is an OLTP performance benchmark that was introduced in May, 2007. The TPC-E benchmark is a not a replacement for the old TPC-C benchmark, but rather is a completely new OLTP benchmark. Even though this new benchmark has been available for about five years, there are still no posted results for any other RDBMS besides SQL Server. Whatever the reasons why other database vendors have not allowed the hardware vendors post TPC-E results with their RDBMS, there are certainly many results posted for SQL Server, which makes it a very useful benchmark when assessing SQL Server hardware. At the time of this writing, we are up to 54 published TPC-E results, using SQL Server 2005, 2008, 2008 R2, and SQL Server 2012. This gives you many different systems and configurations to choose from, as you look for a system that is similar to a new system that you want to evaluate.

The TPC-E benchmark is an OLTP, database-centric workload that is meant to reduce the cost and complexity of running the benchmark compared to the older TPC-C benchmark. Unlike TPC-C, the storage media for TPC-E must be fault tolerant (which means no RAID 0 arrays). Overall, the TPC-E benchmark is designed to have reduced I/O requirements compared to the old TPC-C benchmark, which makes it both less expensive and more realistic since the sponsoring hardware vendors will not feel as much pressure to equip their test systems with disproportionately large, expensive disk subsystems in order to get the best test results. The TPC-E benchmark is also more CPU intensive than the old TPC-C benchmark, which means that the results tend to correlate pretty well to CPU performance, as long as the I/O subsystem can drive the workload effectively. My assumption here is that any hardware vendor that takes the time and expense required to submit a TPC-E Benchmark result is going to make sure they have enough I/O capacity to properly drive the workload for the benchmark.

When I am assessing the relative OLTP performance of different processors, I like to take the raw TPC-E tpsE score for a system using that particular processor and divide it by the number of physical cores in the system to get an idea of the relative “per physical core performance”.  When you do this, you should also be aware of how many physical sockets are in the system, since you will not see 1:1 scaling as you add additional sockets, even with NUMA (which is a huge improvement over the old SMP architecture). This means that a four socket system would not have double the performance of a two socket system that was using the exact same processors and components. This is further complicated by the fact that Intel has a different release cycle for their processors that are primarily intended for two socket systems, where newer models become available in the two socket space about 12-18 months before the roughly equivalent four socket processor. I say roughly equivalent, since the two socket models usually have higher base and turbo clock speeds than the four socket models from the same processor generation. A good example is the two socket Intel Xeon X5690 (Westmere-EP) compared to the four socket Intel Xeon E7-4870 (Westmere-EX).  The Intel Xeon X5690 has a significantly higher base clock speed (3.46GHz vs. 2.4GHz) and a higher turbo clock speed (3.73GHz vs. 2.8GHz) compared to the Intel Xeon E7-4870. There are more than clock speed differences to consider here, since the X5690 only has six physical cores, and a 12MB L3 cache, while the E7-4870 has ten physical cores and a 30MB L3 cache.

Keeping all of this in mind, I found some recent TPC-E results for several of the latest processors from both AMD and Intel, and divided the actual raw score by the number of physical cores in the system. I decided to divide by physical cores, since SQL Server 2012 Enterprise Edition is licensed by physical processor core instead of the old familiar per socket licensing that was used in previous versions of SQL Server. This means that people should be focused on getting the most performance and scalability possible from each physical processor core from a hardware selection and licensing perspective. As you can see by looking at the Score/Core column of Table 1, the new Intel Xeon E5-2690 (Sandy Bridge-EP) is the current champion, followed pretty closely by the Intel Xeon X5690 (Westmere-EP). We see a pretty big drop going to the Intel Xeon E7 processors, in a four and eight socket configuration. Finally, the latest AMD processors are bringing up the rear, with quite a gap between them and the Intel offerings. This does not look very good if you are thinking about using AMD processors for an OLTP workload, especially since you will have to pay for more physical cores (up to 16) in an Opteron 6200 series processor.  One factor that helps mitigate these scores and license costs somewhat for AMD is the new SQL Server 2012 Core Factor Table that Microsoft released on April 1, 2012. This table reduces the licensing cost for most new AMD processors that have six or more cores by allowing you to multiply the actual physical core count by a factor of 0.75 for licensing purposes.


System Processor tpsE Sockets Total Cores Score/Core
IBM System x360 M4 Intel Xeon E5-2690 1863.23 2 16 116.45
HP Proliant DL380 G7 Intel Xeon X5690 1284.14 2 12 107.01
IBM System x3850 X5 Intel Xeon E7-4870 2862.61 4 40 71.57
NEC Express 5800/A1080a Intel Xeon E7-8870 4614.22 8 80 57.68
HP Proliant DL385 G7 AMD Opteron 6282SE 1232.84 2 32 38.53
HP Proliant DL585 G7 AMD Opteron 6176SE 1400.14 4 48 29.17

Table 1: TPC-E Performance by Physical Core

This entry was posted in AMD, Computer Hardware, Intel, Processors, SQL Server 2008 R2, SQL Server 2012 and tagged , . Bookmark the permalink.

3 Responses to Analyzing TPC-E Benchmark Performance by Physical Processor Core

  1. kevinclosson says:

    Good post! Like I always say, don’t confuse a “big” CPU with a “fast” CPU. The EP/EN packages virtually always cast a shadow over EX on a per-core basis. When licensing software by the core this fact is all that matters!

    The server vendors are making large-memory 2S systems which use to be the turf of servers based on 4 or more sockets. For instance, Cisco has a UCS model (the 220 ) that supports 2/4TB RAM and 2S. And those 2S can be populated with the smoking hot E5-2643 which is a very high clock rate, Turbo Boost 2.0, SMT SKU with only 4 cores at 130W. If only there were a TPC-E with that SKU!

  2. Glenn Berry says:

    I suspect a lot of license cost sensitive SQL Server DBAs will like the higher clock speed, quad-core E5-2600 series processors. I always like to see new TPC-E submissions!

  3. Pingback: Recommended Intel Processors For SQL Server 2012 OLTP Workloads - Glenn Berry

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s