News is circulating around the web today about some comments a Microsoft representative by the name of Bill Veghte made about performance on Windows 7.  He stated:

We’re excited to announce in terms of the cooperation and the work that’s been done is around hyper-threading. And obviously the work that we’ve done in Windows 7 in the scheduler and the core of the system to take full advantage of those capabilities, ultimately we think we can deliver a great and better experience for you,” said Veghte, speaking earlier this week at Microsoft’s TechEd conference in Los Angeles.

Anyone that is up on computing technology will tell you point blank that “HyperThreading” does not equal “multiple processors or cores.”  HyperThreading in fact only attempts to simulate multiple cores by sharing some compute resources on the processor to fill in “bubbles” in a processing thread in an attempt to be more efficient than a single threaded CPU.  There are even some instances where HyperThreading can make individually threaded tasks SLOWER than a non-HyperThreaded processor. 


What is interesting about these comments that Bill Veghte made were that they were specific to HyperThreading and not multiple cores in general.  My guess is that some of the pit falls of HyperThreading are being addressed as the re-introduction of the technology with Intel’s Core i7 line of parts brings SMT to forefront once again.  In some areas it’s possible for an OS scheduler to incorrectly assign competing threads to logical cores located to the same physical core and thus create more “cache thrash” than necessary, slowing down performance.  A better scenario would be for the Windows 7 scheduler to place complementing threads (those that share portions of data) on the same physical core instead.

What MS and Intel are likely doing is devising a way to differentiate between these types of circumstances and upgrade support for HyperThreading as well as multi-core processors into the Fall release of Windows 7.