A Messy Transition (Part 2): Windows XP, Vista, and the 2GB Barrier
by Ryan Smith on July 19, 2007 12:00 PM EST- Posted in
- Software
Shortly after publishing A Messy Transition (Part 1) we received numerous requests for similar user address space usage testing under Windows XP, as we had previously done all of our testing on our standard Windows Vista setup. Although we were not expecting a great difference - certainly Vista will use more resources than XP because it's a newer and heavier operating system - we decided to follow these requests anyhow. However what we found completely blew our expectations.
And with that said we'll immediately dive in to the results of our findings. We'll be picking up from where we left off, so please read part 1 if you haven't already.
Software Test Bed | |
Processor | AMD Athlon 64 4600+ (2x2.4GHz/512KB Cache, S939) |
RAM | OCZ EL Platinum DDR-400 (4x512MB) |
Motherboard | ASUS A8N-SLI Premium (nForce 4 SLI) |
System Platform Drivers | NV 15.00 |
Hard Drive | Maxtor MaXLine Pro 500GB SATA |
Video Cards | 1 x GeForce 8800GTX |
Video Drivers | NV ForceWare 163.11(Vista) NV ForceWare 162.18(XP) ATI Catalyst 7.6 |
Power Supply | OCZ GameXStream 700W |
Desktop Resolution | 1600x1200 |
Operating System | Windows Vista Ultimate 32-Bit Windows XP Professional SP2 |
. |
The principles of address space allocation and usage are virtually the same between Vista and XP, so as with our Vista tests we first attempted to crash Supreme Commander against a modified 2.6GB of user address space. Because this needed to be repeatable we have switched to using replays instead of a live game, but the goal remains the same one of monitoring memory usage and looking for Supreme Commander to crash. Or surprisingly, to not crash; we were unable to make Supreme Commander crash and not for a lack of trying.
Supreme Commander Address Space Usage (GeForce 8800GTX, 768MB) |
|||
Game Start | Replay Start | Replay End | |
Windows Vista | 562MB | 1.21GB | 1.95GB |
Windows XP | 116MB | 930MB | 1.44GB |
. |
The above is a chart of the user address space usage of Supreme Commander when the application was launched, at the start of the replay, and 15 minutes in to that replay. Although using a replay reduced overall address space usage (which is why not even Vista is above 2GB at 15 minutes in), there is a massive difference in usage between XP and Vista at all points. At the start of the replay there's already a 300MB difference in address space usage, and by 15 minutes in when Supreme Commander is heavily loaded down that difference has ballooned to 500MB, a full 25% of the total address space the application gets under normal circumstances.
Appropriately, the difference in address space usage was the reason that Supreme Commander would not crash under XP like it would under Vista. Address space usage peaked at 2.1GB, which while in excess of the default 2GB barrier is below the 2.6GB mark where it crashed under Vista. Even a slight reduction in address space usage here would have kept the game from hitting the 2GB barrier at all, avoiding the whole can of worms that is modifying the user address space allocations.
Supreme Commander Address Space Usage (Radeon X1900XTX, 512MB) |
|||
Game Start | Replay Start | Replay End | |
Windows Vista | 230MB | 1.15GB | 1.87GB |
Windows XP | 124MB | 939MB | 1.44GB |
. |
As we originally had a suspicion that this could be related to NVIDIA's drivers, we swapped out our 8800GTX for a 512MB Radeon X1900XTX and ran the Supreme Commander tests under both Vista and XP. The results were virtually identical with Supreme Commander consuming more address space under Vista than XP. Curiously however the overall amount of address space used by Vista is down slightly (by about 120MB) compared to the 8800GTX.
Supreme Commander Address Space Usage (GeForce 7800GTX, 256MB) |
|||
Game Start | Replay Start | Replay End | |
Windows Vista | 240MB | 1.10GB | 1.75GB |
Windows XP | 119MB | 928MB | 1.43GB |
. |
In trying to explain the difference in address space usage under Vista, we finally pulled out a 256MB GeForce 7800GTX. What we found was that the gap between Vista and XP remains, but it is smaller yet again as Vista's address space usage shrunk another 120MB compared to the 512MB Radeon card. With the above numbers we can definitely say there appears to be some sort of relationship between address space usage and video memory under Supreme Commander. But this also raises the question: is this difference in usage of our increasingly critical address space a function of Windows, or something specifically related to Supreme Commander?
57 Comments
View All Comments
chalk - Thursday, July 19, 2007 - link
It might be interesting to perform a test using Vista Home Basic, to see if the "overhead" inherent in the Aero GUI is a penalty in terms of memory use. My impression of the recent incarnations of Apple's GUI i.e. OS-X is that there is quite a penalty in terms of system resources as compared to the Windows XP GUI. It was with some pessimism that I saw Microsoft once again "emulating" Apple, as it produced a new GUI that is "real purdy" but uses appreciably more system resources. I would choose a "lean" interface that allows me to work (and a game might be considered work) more efficiently, that is, allocate computer resources to the work at hand as opposed to a glossy visual interface. I am not as technically adept as many or most of the Anandtech readers, so excuse me if my post is misguided. thanks.EndPCNoise - Friday, July 20, 2007 - link
I believe the Aero GUI (Graphic User Interface) can be switched off, and Vista can be run in a more "basic" GUI - less of a resource hog.I would also be interested if this makes any difference.
Sulphademus - Friday, July 20, 2007 - link
You can turn off the superdeeduper effects in Vista and scale it back to XP or even to 2K. Windows should cut off rendering such data in a full screen game... I would think. But an interesting test, especially for people like me who WoW in a maxized window (and run dual monitors). I know Warcraft isnt a "modern" game but, when you have 25+ people dancing around, it brought my former 7600GS to a halt. How much extra memory will Vista's purdy UI cause the OS to shadow from the video card's resources?Inquiring minds want to know!
leexgx - Thursday, July 19, 2007 - link
all these tests have been done under the 32 bit sides of windows what about 64 bitbrian26 - Thursday, July 19, 2007 - link
The title says it all, id like to see what kind of impact Vista x64 has on the same tests.Zorlac - Thursday, July 19, 2007 - link
I do not think it would have an effect if the app is 32bit. Vista 64 would only solve the problem with native 64bit apps....or maybe if the 32bit app has that large address flag or whatever.EndPCNoise - Friday, July 20, 2007 - link
I do not think it would have an effect if the app is 32bit. Vista 64 would only solve the problem with native 64bit apps....or maybe if the 32bit app has that large address flag or whatever.I believe you would be correct about this, but I would still like to see it tested.
Sulphademus - Friday, July 20, 2007 - link
Now in XP64, or Vista64, how would the 32bit code address space work?In x86 the /3g applies to the whole OS, but in x64 what does the 32bit app think it is running under? I assume that the code is meant to operate under 2g/2g but what is it actually given? Possibly a full 32bits worth of 4g?
What happens under Vista x64 with 4 or more gigs of ram when youre running Supreme Commander and push the apps VM to 2.5, 3, or 3.5 GB? Repeat with an app that is /3g aware?
xiaowugui - Thursday, July 19, 2007 - link
The DX10 specification has that whole virtualization thing, and I heard that the R600 actually fully support it. I wonder if that will make vista happier in its memory management for games?BUL - Thursday, July 19, 2007 - link
...the ever-growing Trapper Keeper from "South Park".