Not too long ago, it seemed like all hope had been lost for Vista as a gaming OS. None of the features rumoured to be in Service Pack 1 - whenever it appears - looked likely to help the cause of gamers who were finding performance under Vista and DirectX 10 was the same as or worse than their old XP installs.
There may be some good news on the horizon, though. Ryan Smith of Anandtech has done some fairly thorough digging around in the KB940105 Hotfix - due to be released on the Microsoft Knowledge Base (opens in new tab) on 23 August - and reckons it has some very promising implications.
One of the key causes of poor games performance, so far fairly overlooked, is apparently the 2GB limit on virtual address space which 32-bit operating systems suffer from. Unlike XP, the Windows Vista Display Driver Model (WDDM) allows applications to virtualise graphics memory, rather than see it as a limited system resource.
This means that every running application can allocate virtual address space to the total amount of 'real' memory on video card, rather than being forced to share. Since 512MB video cards (and larger) are fairly de rigeur in gaming systems these days, it's easy to see how two or three running applications can quickly use up most of the available virtual memory Windows has access to. That's before they even begin to use it for all the things it used to be used for - thus causing slowdown.
The hotfix reduces the amount of virtual address space used for video applications by limiting the number of permanent ranges created for each virtualised application.
While Ryan's testing of the beta fix hasn't uncovered any major performance benefits yet, he has shown that Vista machines with the fix drop their virtual memory usage to a level comparable to XP systems. Which could mean that real improvements to framerates are on their way.
The relevant Knowledge Base article (opens in new tab) points out that the 2GB limit on virtual address space will be reached more often in the future as games get more demanding anyway. The only real long term fix is to switch to a 64-bit environment, which removes the limit. The problem is, while most people are playing games using 32-bit Windows, there's little incentive for developers to create 64-bit versions of their games.