Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Has anyone ever done any database performance comparisons with hyper-threading enabled vs disabled? We are running ibm db2 and I'm curious if anyone has an recommendations for enabling hyper-threading or not. With hyper-threading enabled it makes it quite difficult to do capacity planning for cpu usage.
For example. "With 8 physical cores represented as 16 "threads" on the OS and a cpu-bound workload, does that mean when your cpu usage hit's 50% you are actually running at 100%."

What real benefits do I gain with leaving hyper-threading enabled on an intel server running DB2? Does hyper-threading help if you're workload is truly disk IO bound? If so, up to what percentage?

These are the types of questions I'm trying to answer. Any thoughts?

share|improve this question
Ill have to find it later, but yes these tests have been done and the answer is not clear cut. It basically came down to "set up some performance statistics logging, and test a typical workload with it on and off. See which one is faster", because different workloads gave a different preference. –  Mark Henderson Sep 26 '12 at 20:50
Hypertreading on old Intels CPU resulted in two virtual CPUs. Those two virtual CPUs could not access the memory at the same time. A DB instance running on two of these cores would not gain speed. (It could even loose speed. Up to 30% loss has been seen by a certain search engine). So it can be detrimental to enable hyper treading. However on average it results in a nice performance boost. TLDR; Test, your mileage may vary. –  Hennes Sep 26 '12 at 20:54
Intel has called many very different things "hyperthreading". At minimum, we must know what CPU you're talking about. –  David Schwartz Sep 26 '12 at 22:15
These are Intel X5687 @ 3.60GHz. –  rtorti19 Sep 27 '12 at 12:56
At it's core this is really a capacity planning question. That link will take you to our generic reason we can't help with this sort of thing (it depends heavily on your workload), and there's more information there about how to do capacity planning / load testing for databases... –  voretaq7 Oct 5 '12 at 17:11
add comment

closed as not constructive by Michael Hampton, Scott Pack, HopelessN00b, Zoredache, voretaq7 Oct 5 '12 at 17:09

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.