Linux Database Server CPU Comparison
by Johan De Gelas on June 17, 2005 12:05 AM EST- Posted in
- IT Computing
Analyses and Conclusion
First of all, we would like to emphasize that we are well aware of our findings - they are only applicable to your database applications if you run a "read heavy, few writes" database server and the database is not too large, so the most used parts can run mainly from the RAM. As 1 GB DIMMs are very cheap now and with the introduction of 64 bit CPUs and 64 bit Linux 2 years ago, it is clear that making sure that your database has enough memory for its disposal should become a lot easier for many database administrators.There are a few interesting conclusions that we can make about the software side of things. First of all, DB2 8.2 scales fantastic when you add more CPUs. This makes the dual core Opterons very attractive: an Opteron 265 costs as much as an Opteron 252 or Xeon Irwindale 3.6 GHz, but it is clear that it will perform a lot better. It also offers a better upgrade path, since you can use up to four cores on relatively cheap motherboards - compared to the average price of a quad CPU motherboard - with two sockets.
The MySQL MyISAM benches make it clear that pure speed isn't everything. MySQL MyISAM allows you to get away with a single CPU system as it delivered up 300 queries per second, while DB2 was only capable of delivering a bit more than one third of that performance. The picture quickly changes when we need safe transactions too (even with few writes, this might be critical): the InnoDB engine is about 40% slower in our environment. MySQL remains very fast, but as we add more CPUs, the difference gets very small with DB2. While this article has no ambition to be a guide to the software part of database servers, it is clear that you should choose your hardware in function of the database server software that you select. With DB2, you get enterprise class database serving, and dual core CPUs are a very good solution for it. MySQL is excellent to save on your hardware costs, but if you expect the number of transactions/data mining queries to rise quickly, adding more than two CPUs will buy you little performance (10 to 20% boost).
The most surprising thing that we noticed while comparing our new findings on the 2.6 kernel with those of our previous report (32 bit, 2.4 kernel) is that the Xeon benefits a lot less from 64 bit and the new 2.6 kernel than the Opteron. While the 64 bit binaries run consistently (much) faster on the Opteron, the Xeon isn't too happy with them and runs them 4 to 10% slower. Hyperthreading isn't - in our case - helping either, with 1 to 10% lower performance.
Branch prediction penalties, due to the longer pipeline of Nocona/Irwindale, are not the problem. We noticed with Vtune and Code Analyst that the Branch Prediction Unit of the Xeon Nocona and Irwindale does a marvellous job and predicts between 96% (MySQL) and 97% (DB2) of the branches correctly, while the Opteron's BPU is about 93% and 94% correct of the time. MySQL consists of 20% branches, and DB2 has only 16% branches. The L2-caches also do a good job with only 2% of data demands being covered by the RAM, and a 98% hitrate on the L1 and L2-caches.
According to our research, we can assume that the 64 bit implementation of the new Xeon is simply not as powerful as the Opteron's. Intel has some catching up to do, especially when you look at the dual core Opterons. We already discussed AMD's elegant dual core architecture in detail, but in this review, we have seen very good indications that the design with the two cores connected by the SRQ does improve performance in real world applications and not only in our cache-to-cache tests.
This architecture together with AMD being six months ahead with their dual core server product gives AMD significant advantages in the server market today. The lack of mature server versions of Windows (2003) and the fact that only the latest kernels of Linux support the dual core Opteron might slow AMD a bit down, but not for long.
45 Comments
View All Comments
erwos - Friday, June 17, 2005 - link
If they used RHEL4, this would be far more useful. SuSE's not quite a bit player, but let's face it: Red Hat is dominating the commercial space.-Erwos
SunLord - Friday, June 17, 2005 - link
Interesting benchmark though i would of prefered you used a postgresql instead of DB2 since it's also open source and is the most likely alternnative to mysql... a DB2/Oracle bench would be kinda cool...Son of a N00b - Friday, June 17, 2005 - link
nice work guys!nserra - Friday, June 17, 2005 - link
#6 "but very important: AMD, OPEN YOUR EYES AND SEE WHAT INTEL IS DOING WITH PRICING ON DUAL CORES! don't get cought with pants down."Explain me something:
- how do you explain or how Intel will explain that their single core processor cost more than the dual core ones?
- Why should you buy a single core over a dual core if it cost more?
- How good is this Intel market decision (marketing).
I think is pretty logical to me that a dual core cost more than a single core processor so 4800+ more expansive than a 4000+ so it's OK! Stop blaming AMD, and their marketing team!
Viditor - Friday, June 17, 2005 - link
Calin - "Unfortunately, it seems that their dual core processors will be more expensive than Intel's"Actually, that's not true at all!
The fact is that AMD haven't released a "Value Line" of dual core yet because they don't see a large enough market for it.
By comparing the 2 companies offerings, it's apparent that the 820D should match up equvalently to a dual core Sempron when it's released, and the ($1000) 840EE matches up to the ($500) 4200+ rather nicely.
The 4400+ and the 4800+ are in a class by themselves without competition at the moment, hence the prices are high.
AlexWade - Friday, June 17, 2005 - link
I like these real world benchmarks articles.snedzad - Friday, June 17, 2005 - link
Again "Root me" wallpaper. Moron.Starglider - Friday, June 17, 2005 - link
I would guess that the problem is the netburst architecture's fast integer units. As I recall, the P4 integer units are split into two 16-bit stages and run at double the main clock using complicated differential signaling logic. I seriously doubt it would be feasible for Intel to add another two stages or to double the width of the units, as they're already power and chip area hungry and pretty much integral to the design. AMD on the other hand designed the Opteron to be 64-bit from the ground up and is running at a lower clock speed, making 64-bit wide single stage logic much easier.Thus the authors speculation that the P4 is taking twice as many cycles to process 64-bit simple integer operations (while the Opteron needs no additional cycles) seems highly likely to me. I'm one of those (apparently) rare programmers that needs to use 64-bit integers a lot, so it's not surprising that all our compute servers are Opteron powered.
Calin - Friday, June 17, 2005 - link
I really hope AMD will get a share of the higher profit server processor market. Unfortunately, it seems that their dual core processors will be more expensive than Intel'sZalmanKalman - Friday, June 17, 2005 - link
Wow, great and detailed artical. The punchline is so sweet to my ears. Vary sad to INTeL Fans, but I guess they buy, and will buy, intel b/c of corporate safty.but very important: AMD, OPEN YOUR EYES AND SEE WHAT INTEL IS DOING WITH PRICING ON DUAL CORES! don't get cought with pants down.