Ok, this is a somewhat misleading post, thus far. I’m struggling to uncover support (in either direction) if SQL 2008 has improved support for hyper threading – and I’d like to use this medium to get any feedback YOU may have, so please reply in the comments below!?
Now, I’ve been around long enough to know, the easy (and often correct) answer is always “It Depends” but at this point I’m simply looking for any kind of supporting documentation about HT within SQL 2008, all searches have turned up minimal results, most dating back many years – so it’s time we update content on the subject.
I promise to update this post with any supporting data or links I find, and hope it may help you down the road – so if you have something to share – please leave a reply!
*UPDATE. While it seems SQL 2008 hyper-threading MAY work for your environment, it posed numerous issues in ours. Issues were primarily related to I/O, or thread in-efficiency causing lots of waits (CXPacket) due to timing of true CPU threads vs. HT CPU threads. We experienced numerous timeouts and parallelism issues with query performance – all of which were resolved by DISABLING hyper-threading for SQL 2008. Additionally, if you’re using newer Nehalem processors, you should also confirm “TURBO” mode is disabled, which allows frequency shifting among cores, which can cause similar threading problems for heavily used OLTP database systems.
So, while HT and “Turbo” are innovative technologies, it remains once again, use caution implementing in your environments. These are probably fine in traditional application workloads, but may not be in SQL and/or Exchange environments. Hope this helps save you time troubleshooting.
So, you have any link of how to disable TURBO on Nehalem? Do you mean just setting the power schedule to “HIGH PERFORMANCE” instead of “BALANCED”? I just haven’t heard it called TURBO.
It’s been a while since we’ve had to disable, but if my memory serves me both can be done from within the bios. Good luck.