I’ve been intrigued by reports that Server 2008, suitably configured, makes a better desktop OS than Windows Vista. In my previous post on the subject, I reported some observations by others, suggesting that Server 2008 performs better than Vista with Service Pack 1, even though it is meant to have the same core components. I though it was time I took a look myself.
I have some free space on my usual desktop box, so I created two new partitions and installed Vista 32-bit with Service Pack 1 on the first, and Server 2008 32-bit on the other.
Aside: Both installs were smooth. The integrated Vista SP1 install works nicely, and few updates were required after the first boot. It is remarkable how much more pleasant it is to install Vista from scratch, instead of dealing with an OEM pre-install. Surely it should be the other way round?
I tried to make both installs usable desktops. On both operating systems, I installed the driver for my Terratec soundcard, along with Intel’s .INF installer for the motherboard, Management Engine Interface, and storage driver. I also installed a recent NVidia driver. The result was that all devices were enabled in device manager.
On Server 2008 I also installed the Desktop Experience and .NET Framework 3.0. I enabled the network, the audio engine, the Themes service, Windows Update, and Aero graphics. I created a new user account and logged in as that user, so that UAC (User Account Control) was active. I set it to optimize performance for programs rather than background services.
Next I ran the PassMark performance tests I’ve used before. Advantage Server 08 – but not by much. It scored 1118.3 vs Vista’s 1102.3. I doubt this is significant; there is also small variation between different runs, which could account for a difference like this.
Looking at the detailed results shows something intriguing though. On the Graphics 2D GUI test, which exercises Windows controls like listboxes, checkboxes and dropdowns, Server 2008 scored 149.8 operations per second, vs 119.2 on Vista – more than 25% faster. I hesitate to attach much significance to my simple tests, but that might account for a snappier feel in the user interface. I repeated this particular test several times; Vista never scored higher than 123, and Server 2008 was consistent too.
There was also a notable difference in the “Memory – Large RAM” test. Vista 32-bit performed 802 operations per second, Server 08 1074: just over 33% faster.
On most tests, Vista was slightly slower, though on the disk tests it was fractionally faster. There were no other differences as big as the above.
I thought it would be interested to compare the list of running services on the two machines, after the changes mentioned above. Here are the services I spotted running on Vista but not Server 2008:
- Computer Browser
- Offline Files
- Portable Device Enumerator
- Program Compatibility Assistant
- ReadyBoost
- Security Center
- SSDP Discovery
- Superfetch
- UPNP Device Host
- Windows Connect
- Windows Image Acquisition
- Windows Search
and on Server 2008 but not Vista:
- Remote registry
- SL UI Notification
- Windows Remote Management
So how would it be if Vista did not have the burden of these additional services? I stopped them. Result: no significant difference; the overall score was 1102.
Tentative conclusions
Benchmarks are not always a good measure of real-world performance. There are aspects of performance which the benchmark does not measure. In addition, some of the perceived advantage of Server 2008 is likely to be the effect of a new clean installation – never forget Windows Cruft.
Even so, on my particular system (Intel board, Core 2 Quad Q6600 CPU, NVidia 6800 graphics) Server 2008 does measure better. I’m particularly intrigued by the Graphics 2D GUI results. I do not know why Server 2008 is faster; but look forward to the same improvement appearing in desktop Windows in due course.
Update – 2D performance difference solved
I’ve worked out the reason for the difference in Graphics 2D GUI performance. It is because Server 2008 defaults to different settings for visual effects. You can see these by right-clicking Computer in the Start menu, choosing Properties, Advanced System Settings, Advanced tab, Settings, Performance options. I am sure there are other routes to the same dialog, some of which may be less arduous.
If I set these to Adjust for Best Performance on both systems, Vista actually goes ahead of Server 2008, with a score of 180 vs 172 on Graphics 2D GUI. That’s not much to worry about.
I’m satisfied that the performance differences between Server 2008 and Vista are mainly about configuration, rather than core components. If you want to speed up your own desktop, these settings are a good candidate for experimentation.