Composition Engine and Spyware Performance

One particularly important change with the move to a GPU accelerated desktop is relieving some of the enormous CPU performance penalties caused by GDI+. Because of how GDI+ handles window refreshes, heavy desktop activity that involves tasks such as moving around a window result in GDI+ eating up a great deal of CPU time just to handle these refreshes. By moving to a GPU accelerated desktop, the Window Composition Engine (WCE) that now handles these effects can offload some of the work to the GPU by treating these items as polygons and textures, which the GPU is well suited to manipulating.

In order to test the performance impact of the WCE, we set up a simple test in which we opened up several windows scattered around the desktop and in different states of overlapping each other, and then dragged around a window for 10 seconds measuring the system CPU usage. If the WCE is doing its job well, the CPU usage should be reduced. All 3 of Vista's desktop rendering modes have been tested using the exact same setup, and XP has been included using a setup as similar as possible. (We can't guarantee everything was 100% identical, as we are running on a different operating system with potentially different background tasks running.)

Click to enlarge

Windows Composition Engine Performance
XP Vista Aero Vista Basic Vista Classic
CPU usage 49% 33% 97% 78%

While the results against XP should be taken with a grain of salt due to the aforementioned setup issues, it's clear that in Aero mode the composition engine is doing its job and has pushed CPU usage down to 33% in spite of all the eye-candy this mode has over all other modes. For users who will be capable of using Aero mode, this will be a win-win situation for them as they can use all the advanced features of Aero and still need less CPU power in the process.

Vista Basic however is very distressing, and we're not particularly sure why it's doing so poorly. As we mentioned before, Basic is effectively just a new skin using the XP rendering mode, so why it's maxing out our CPU we're not sure at this point; the poor overall graphics performance of Vista shouldn't be affecting Basic this much considering it doesn't utilize 3D acceleration, nor does the debug code make for an adequate explanation for it. XP clearly does much better, and Microsoft needs to get Vista's performance more in line with XP's; otherwise those who want to use Vista on systems inadequate for Aero are going to be inadvertently giving themselves CPU-bound situations.

As for Vista Classic, since it's using a very similar rendering mode as Basic, the similarly poor score isn't surprising. Clearly disabling the semi-advanced features that give Basic its more refined look can bring CPU usage down, but 78% for the barebones graphical features of Windows 2000 is still too high. We'll definitely be taking another look at this when Vista is shipping.

Spyware Protection

While there's no formal method for testing the resilience of an operating system to spyware, one of the biggest pushes from Microsoft with Vista is that it will be much harder to infect with spyware, due to the combination of the new firewall, the UAC changes, and the integration of Windows Defender. To put that claim to the test, we attempted to infect our Vista setup with the Hotbar spyware package, a moderately annoying piece of malware that displays advertising and tries to phone home a record of user activities.

Going the direct route, we visited Hotbar's site in IE7+ and downloaded the Hotbar application directly from their site. Much to our surprise, Vista did not complain about this past the fact that we were running an executable we downloaded, something that Windows XP does just as well. Vista continued to sit idly by as we ran the installer for Hotbar, and we ultimately did not encounter any issues installing it.

It was not until we tried to remove it that we realized that Microsoft did not ship Vista with any spyware definitions, which is partially the reason that Windows was so passive about it being installed. In fact, until we installed those definitions, the only thing that kept Hotbar contained was the last failsafe, the firewall, which detected Hotbar attempting to connect to the internet and allowed us to block it before any further damage could be done. Once Microsoft's definitions were installed, we were able to remove Hotbar using Windows Defender without a problem. We then tried to install Hotbar again, at which point Defender notified us that we were trying to install a known piece of spyware and allowed us to abort the installation.

Given this test, we're not terribly convinced about Windows' anti-malware abilities at this time. In spite of UAC, Hotbar seemed perfectly happy running as a user-limited process, and it was only the firewall that kept it in check. Trashing a user account is for all practical purposes equally as destructive as trashing the entire system, so this is not a significant improvement.

It also puts Windows Defender in a bad light, as it appears that it will be of limited use in the case of dealing with a piece of malware it doesn't recognize. Certainly Defender will keep a subset of computer users from consistently reinstalling something that is spyware that they don't know about, but this may very well just lead to an arms race for spyware much like viruses today, which is not an effective situation. The firewall saved us, but that's not always going to be enough.

General Performance Conclusion


View All Comments

  • stash - Friday, June 16, 2006 - link

    Sleep is more effecient in the long run. Shutting down and doing a cold boot every day uses a lot more electricity than sleep. When the machine is in sleep, it uses a fraction of a single watt. Yes, this is obviously more than zero (completely off), but when you cold boot a system, it uses many times more power.

    As a side benefit, you get back to where you left off almost instantly because sleep combines standby with hibernation.
  • Griswold - Friday, June 16, 2006 - link

    Oh so wrong. Why would a cold boot use more power? Because the HDDs spin up? Going from sleep to full on does the same. Because the OS has to be loaded from the HDD? Sleep mode also writes to disk. And thats actually it. This is a computer, not an engine that uses more fuel at startup than when it runs. Reply
  • stash - Friday, June 16, 2006 - link

    When you can resume from sleep in a few seconds compared to 45-60 seconds from a cold boot, then yes, a cold boot uses much more power. Reply
  • johnsonx - Friday, June 16, 2006 - link

    Stash, your logic is faulty. Please give up.
  • stash - Friday, June 16, 2006 - link

    Why should I give up? How is my logic faulty. Reply
  • smitty3268 - Friday, June 16, 2006 - link

    <I>Is Expose the same as the new compiz and XGL?</I>

    No, that is more like the Aero interface or OSX's Quartz Extreme. Expose lets you hit a button and then automatically scales and moves every window so that you can see them all and pick out which program you want to use. Think of it as a replacement for ALT-TAB. There is a plugin in compiz that does the same thing.
  • Locutus465 - Friday, June 16, 2006 - link

    Not sure what your issues with 3D were, I only skimmed the artical so I'm sure which video card you used... But it's possible that if you're using ATI you experienced problems due to their drivers. I've seen many more ATI issues in the MS groups than nVida. My 7800GT has no problem with 1600x1200 (full 3d acceloration, no apparent crashing). My only concern wth Vista 64 is drivers... As of right now there's no driver avaailable for the Promies Ultra100TX2 controller card which is a huge issue for me as I have my secondary drive (used to store installers and as my page file drive in XP). I hope MS manages to convince to support 64b as well as 32b is supported. When I do upgrade to Vista, it will be to 64b. Reply
  • JarredWalton - Friday, June 16, 2006 - link

    Page 10: using 6800 Ultra card.

    The problem is both with drivers (64-bit are still being worked on), the OS (still being worked on), and resource requierments are increased under 64-bit mode. Compatibility with various hardware is already worse with Vista, but 64-bit mode is even worse still. Can they fix it before shipping? Hopefully, and one way or another we're going 64-bit in the future.

    It could be that other test systems would be more or less stable, but with a preview of Vista Beta 2 that's really too much extra work. The article was already over 12000 words, so trying it out on five other platforms would make this monolithic task even more daunting. The bottom line is that Vista is still interesting, but it's definitely not ready for release. There's a good reason it has been delayed until 2007, just like the XP x64 delays in the past.
  • DerekWilson - Friday, June 16, 2006 - link

    We have tested Vista with both ATI and NVIDIA drivers and see similar issues between the two. While the numbers were gathered under NVIDIA hardware, we are confident that the same patterns would emerge with ATI at this point in time. Reply
  • Locutus465 - Friday, June 16, 2006 - link

    Well, weird... I've had my share of beta issues but thus far Glass + 3D acceleration hasn't been one of them. I have noticed that installing QuickTime 7 on Vista (at least in my case) renders Vista Ultimite 64 unbootable. Reply

Log in

Don't have an account? Sign up now