Virtual Memory - Am I The Last To Know?
Posted By : todd sharp Posted At : January 10, 2007 9:25 AM Posted In: Misc
13
I had a good IM conversation with one of my IT/Hardware guru buddies yesterday where we discussed virtual memory. Since I've already proved myself to be a hardware noob I figured I have nothing to lose in throwing out this tip (I do consider this a hardware issue since it essentially involves performance tuning for your machine). I've always seen the notice in Windows about virtual memory being low and increasing the setting could result in performance gains, but I never really thought twice about it. Well after speaking to my buddy I went home and tried it out - and was absolutely stunned with the immediate performance gains on my system. I'm sure that your results may vary - but my system was much more responsive and efficient in opening applications, even with multiple memory intensive applications open at the same time.
If you'd like to read a bunch of mumbo jumbo about virtual memory, check it out in Wikipedia. As with any hardware tuning advice that you get from me, use at your own risk. I am not responsible for blown up mother boards.
Here are the steps that my buddy advised me to take. Again, this is specific to Windows XP.
Step 1: Right click on My Computer, Select Properties.
Step 2: Select the Advanced tab and click on Settings under Performance.
Step 3: Select the Advanced tab in the Performance Options window (wow, that's a lot of 'advanced' stuff).
Step 4: Under Virtual Memory click Change.
Step 5: This window displays your current settings for virtual memory. You can manually alter the settings, but my buddy recommended to choose System Managed Size. The way he explained it to me, System Managed Size basically tells Windows to expand the virtual memory size as needed. If multiple applications are running, windows will automagically increase the size of the VM until it no longer requires it. Once you make your changes click Set and exit the windows. A restart may be required.
And that's it. As I said above, I noticed immediate and dramatic performance gains on my little old Dell. My buddy also started telling me about how he has overclocked his processor by making some BIOS adjustments, but I don't think I'm quite ready to go there. Anyone with further insight is welcome to comment.



Rob - great point - that does make a lot of sense. In fact, my machine here at work is running pretty well on 1gb, but the 640mb at home was not handling the demand.
On my older machines I've always set a fixed size (there are calculations you can find on the web but I think it's something like 1.5 x physical RAM.
I also set the min and max to the same size so that way I have a fixed amount of virtual RAM and Windows doesn't need to adjust constantly.
You see a performance increase by letting windows control its own VM?
Have you tried setting the min and max to the same number? Lets say 2x or 1.5x (I'm not up on the latest recommendation for XP) the amount Ram you have?
The theory behind this is this will prevent windows from resizing the VM and thus freeing up that CPU / harddisk time that would normal go to doing the resize.
Doing this had very large impact on Windows 9x and windows 2000. I have not tried comparing this in XP. (I'm a programmer now, not a bench tech.)
Giver a try I'll be interested to hear your result.
--- Ben
The information for games is already stored, ready to be compiled, re-storing it is ludicris. When I play a game the HD is intensely active, during play harly at all. Weird isn't it?
I would have thought there would be some adequate streaming process by now, where mesh, textures, lightmaps, heightmaps and weight effects were constantly updated, entire computing power devoted to getting whattt you see and are about to see on screen. Yea maybe the HD needs a processor so it can fill the ram at the rate ram goes into the processor.
Instruction -> HD -> Compiler -> Monitor/speakers
(Instead of instruction -> Processor -> Ram -> Processor -> Graphics card -> HD etc)
Once a world is set up and the button presses on a controller have meaning the only process should be using those button presses as orders
"Get this ready for me to walk through, look at & hear, I just need what I can see and am about to"
I'd like to know if anyone has done benchmarks with and without VM.
iam using windows xp
i tried to increase the min and max of VM, but this change wasnt effective, iam still experiencing the same problem, iam not even using applications which require high ram requirement
Probably the biggest myth regarding the pagefile is that system managed is inefficient. In most cases this is not true. The pagfile will only need to expand if the initial size is not sufficient. At 1.5 times physical RAM this will usually be true. If this is not the case then the solution is to increase the initial size, not prevent it from growing. The danger in restricting the pagefile is this: what if you guess wrong? The result will be impaired performance as Windows is forced to page active program code instead of rarely used data.
Recommendations: Initially use default settings. If you receive warnings then increase the initial size as necessary. In any event the maximum should be at least twice the initial size, up to a maximum of 4GB.
With these settings pagefile resizing will be rare. But if Windows ever needs more it can grow as necessary. Upon a reboot (if not sooner) the original size will be restored.
Larry Miller
Microsoft MCSA
Thank you again,
Alex