Microsoft Corp. has released yet another patch that should improve performance of three-dimensional games in Windows Vista environment. Nvidia Corp. has already started to recommend the hotfix to its customers along with a new beta driver package. However, it is unclear whether low performance and abnormal behavior is limited to Nvidia’s hardware and software only and does not affect ATI Radeon graphics products.
Microsoft explained that existing games and other graphics applications frequently allocate virtual memory for a copy of the video memory resources that the application uses. However, this is no longer necessary with Windows Vista, which has a special Windows Display Driver Model (WDDM) manager that ensures that the content of every video memory allocation is maintained across display transitions. Still, the new operating system (OS) has a mechanism to emulate the behavior of previous versions of the OS for compatibility issues.
However, if an application creates its own in-memory copy of its video resources, or the application uses DirectX 9 or an earlier version, the virtual address space contains the WDDM video memory manager’s virtualized range and the application’s copy. Applications that use graphics APIs that are earlier than DirectX 10 and that target GPUs that have large amounts of video memory can easily exhaust their virtual address space causing low performance or erratic behaviour.
Microsoft said that to address this problem, the world’s largest maker of software is changing the way that the video memory manager maintains the content of video memory resources. This change is being made so that a permanent virtual address range does not have to be used for each virtualized allocation. With the new approach, only allocations that are created as “lockable” consume space in the virtual address space of the application. Allocations that are not created as “lockable” do not consume space. This approach significantly reduces the virtual address space that is used. Therefore, the application can run on large video memory configurations without reaching the limits.
Nvidia Corp. issued a statement claiming that the hotfix resolves abnormal application behavior such as crashes and extremely low frame rates when running some 3D applications “at very high graphics settings”. This issue is not limited to, but has been most commonly noticed on high-end graphics cards and the following applications: Battlefield 2, Battlefield 2142, Civilization IV, Company of Heroes, Half-Life 2, Lord of the Rings: The Battle for Middle Earth II, Supreme Commander, and Tom Clanc’s Rainbow Six Vegas.