posted by Thom Holwerda on Tue 2nd Dec 2008 10:58 UTC


On the subject of benchmarking, if you take a moment to step outside your personal experience space of gaming and enthusiast computing, you'll discover that real-world performance means more than frame rates and 3DMarks. It means the ability to process potentially complex workloads efficiently and without undue penalty from the supporting operating system.

This is why Windows XP has lingered so long in enterprise computing circles while Vista has been soundly rejected: Because Vista placed such an undue burden on systems that it made it nearly impossible to support the complex workloads that make up the typical enterprise computing stack. Simply put, it overwhelmed the hardware available at the time of its launch, forcing customers to choose between wasting CPU upgrade cycles on superfluous "features," like DRM and content protection, or putting them to work improving the performance and end-user experience of their business-critical applications. And I think we can all agree on where IT decided to focus those finite resources.

Here's a statistic for you: At a fundamental level, Windows Vista is ~40% slower than Windows XP on common business productivity tasks.

This isn't conjecture. It isn't speculation. It's cold, hard fact based on extensive testing of both OS and their respective recent Service Pack iterations: Windows XP Service Pack 3 and Windows Vista Service Pack 1. Here's the original research work that backs this up: .html tml

Note that I say at a "fundamental level." The truth is that, if you strip away all of the "Vista" features - disable all the new services (Search, SuperFetch, MMCS), turn-off all the new UI goodies (Aero, compositing), and terminate every non-critical process - Windows Vista is *still* 40% slower than Windows XP. In fact, no matter what you try, you will *never* manage to tune Vista so that it performs like Windows XP on identical hardware. Never. It's simply not possible.

Why? Kernel complexity. Those extra 39-40 execution threads (96-97, vs. 56-57 on XP) translate into a kind of performance anchor around Vista's neck, causing even a stripped-down, bare-bones implementation to perform at degradation levels that approach disabling a core or drop a GB or two of memory. It's why XP is roughly 18% slower than Windows 2000 (22 additional kernel threads). And it's also why Windows 7 performs almost identically to Vista (no significant increase in kernel complexity - yippee!).

In fact, if you look at the history of the NT kernel, and you map the increase in thread count against the decrease in performance (relative to the previous iteration), you come up with a nice little ratio that fits the data almost perfectly: For every additional execution thread added to the kernel, linear performance decreases by from 1 to 1.2%.

Again, this isn't speculation. It isn't conjecture. It's an observation made over several generations of the NT OS, a convenient "rule of thumb" that has yet to be disproven. And I do hope that both our reader communities will accept my not-so-subtle challenge to disprove the "kernel thread rule" by downloading the free tools and resources of the Windows Sentinel project ( and/or the (

Some more raw data to put things into perspective:

So, to wrap up today's lesson:

1. Performance means more than gaming and gamer-centric benchmarks.
2. Vista is measurably slower than Windows XP at a fundamental level, just as XP is slower than Windows 2000 at a fundamental level.
3. Techno sucks - long live Rock & Roll!


Table of contents
  1. Randall, opening
  2. Thom
  3. Randall
  4. Thom
  5. Randall
  6. Thom
  7. Randall
  8. Thom
  9. Randall
  10. Thom, final
e p (0)    78 Comment(s)

Technology White Papers

See More