Windows on multicore: Why XP reigns supreme
Microsoft faces short term embarassment over Vista and Windows 7 speed
By Randall C. Kennedy, InfoWorld | Published 00:55, 23 January 09
Windows XP SP2
Windows XP is the OS that simply will not die, and for good reason: It's mature, stable, and - - most important -- fast as the wind on today's hardware. In fact, Windows XP outpaced its younger siblings by a factor of two during multiprocess workload testing -- concurrent database, workflow, and multimedia tasks on our dual-core test bed and by up to 66 percent on our quad-core test bed.
In terms of raw application throughput, Windows XP clearly is still king of the hill. However, despite its current edge on dual-core and quad-core systems, Microsoft's 8-year-old OS is beginning to show its age. For example, when you contrast the dual- and quad-core transaction times for the ADO (database) and MAPI (workflow) workloads, you see that scalability -- in terms of a percentage improvement from dual-core to quad-core -- is capped at 265 percent for the database tasks and 32 percent for the messaging workflow tasks.
While excellent by legacy Windows NT standards, these improvements pale next to the 571 percent boost witnessed for the same SQL-driven database workload under Windows 7, or the 58 percent improvement for the MAPI message store workflow task under Windows Vista.
My interpretation: Windows XP's aging kernel, though SMP-aware, has never been fully optimised for multicore computing. By contrast, both Windows Vista and Windows 7 have benefited from years of tuning and tweaking (including the removal of various global SMP locking mechanisms) to allow them to better exploit all those additional CPU cores.
This scalability advantage doesn't erase XP's performance edge on today's dual- and quad-core systems; even on tomorrow's eight-core CPUs, XP should remain unchallenged. But it does set the stage for an eventual inflection point where, given a sufficient number of cores, Windows Vista and Windows 7 will close the performance gap with XP.
Meanwhile, XP will continue to lay claim to the title of the leanest 64-bit NT kernel-based Windows platform (sorry, Windows 2000, you're 32-bit only), which is evidenced by its superior execution efficiency. If you take the raw transaction times for the database and workflow tasks, then factor them against the average processor utilisation for these same workloads, you see that Windows XP consumes roughly 7.2 and 40.7 billion CPU cycles, respectively, to complete a single pass of the database and messaging workflow transaction loops on our quad-core test bed.
By contrast, Windows Vista takes 10.4 and 51.6 billion cycles for each workload, while Windows 7 consumes 10.9 and 48.4 billion cycles. Translation: On quad-core, the newer operating systems are at least 40 percent less efficient than XP in the database tasks and roughly 20 percent less efficient in the workflow tasks.
In the end, it all comes down to the complexity of the execution path. With its simpler legacy kernel devoid of DRM hooks and other performance-sapping baggage, Windows XP provides a cleaner code path for the workloads to navigate as they execute.
This, in turn, translates into better overall performance with lower consumption of CPU cycles. The flip side is that these performance advantages are likely limited to the current generation of quad-core systems, and perhaps tomorrow's eight-core CPUs, and may quickly evaporate as new system designers seek to incorporate increasing degrees of parallelism into their products.











