In my previous post on this subject, I mentioned that I'd very much like to see the authors repeat the performance analysis of database servers on a more current processor. Well, they did. A group of researchers from Carnegie Mellon University, including the key author of the original paper, recently published a paper on Database Servers on Chip Multiprocessors: Limitations and Opportunities.
If you follow the development of the multi-core processors and wonder about their implications on running the database workloads, you should read this paper.
I find a number of things are interesting in this paper. First, I must admit that I had not paid enough attention to on-chip L2 cache latency, and was surprised that its latency had increased more than 3-fold. I still find it a bit incredible, and want to check out the source of that data myself when I get a chance. If you have a link to a reliable source, please let me know.
Secondly, the authors found that incorporating large and slow caches on chip can have detrimental effects in the performance of database systems. I don't like the combo of ‘large and slow' and much prefer ‘large and fast' . Again, I'll have to check to see whether ‘large' necessarily comes with ‘slow' in this case. Regardless, I don't know how much I would be influenced by this particular finding. If you take away the ‘slow' qualifier, this is too counter-intuitive for me to swallow. While I prefer not to stick my head in the sand, I will probably still bet on larger L2 cache giving me better chance for higher performance.
I do like the third major finding of the paper, which is "increasing the number of cores that share an on-chip L2 cache does not cause an inordinate number of additional cache misses for database workloads. In fact, these workloads exhibit significant sharing between cores." In my own tests, I have found SQL Server OLTP workloads react well to quad-core processors.