Dwight Silverman takes a closer look at some XP tweaks that made it to the front page of Digg and says, Don’t Digg that XP tweak. His conclusion bears repeating:
It’s not a great idea to apply random tweaks you spot on the Web to your system, even if you spot them on a high-profile tech site such as Digg. Get a second opinion by doing some searching, and do some research at sites such as XP Myths.
Dwight’s absolutely right. Many so-called Windows tweak sites are filled with misinformation. (See the prefetch myth for a prominent example.) I’m certain the people who pass this stuff along are well-meaning, but they don’t understand the internals of memory management, and so they’re easily misled. They’re convinced that there’s some secret group of Registry settings that can magically improve performance (one Microsoft engineer called this the “make rocket go now” urban legend).
In particular, Dwight wonders whether it’s OK to enable a Registry change to the DisablePagingExecutive setting. Here’s my take:
For the average person, making a chance to the DisablePagingExecutive setting is like trying to perform a lobotomy on yourself with a pair of knitting needles.
What this setting does is to prevent drivers and kernel code from being written to the pagefile. Now, think this through logically. If you’re running so many programs that you exceed the amount of physical memory in your system and you start up a new program or process, the operating system has to move some program code and data out of memory and into the pagefile to make room for the bits you just requested. You could let the OS make intelligent choices about which bits to swap. Or you could constrain it by saying, “Don’t ever swap this type of code out.” If you enable this tweak, you limit the flexibility of the OS and force it to throw something else out, which in this case is one of the other programs you’re running. That increases the delay you’ll encounter when you switch back to the other app.
This setting is provided for use in servers, where administrators run a limited and well-known set of applications and need to debug or tune for performance in a controlled environment. Using it in a workstation is asking for trouble.
In general, I recommend against trying to change the way Windows memory management works. It’s a system. Tweaking one aspect of it runs the risk of destabilizing the entire system. It’s also worth noting that this setting has been around since the Window NT era. Now, Microsoft’s engineers are obsessive about performance. They know that reviewers will put a stopwatch to every new release, and so they tune and tune and tune to get the memory paging system working effectively. If this setting really made a difference in performance, don’t you think it would be enabled already?
If you’re really concerned about performance, the smartest thing you can do is monitor memory usage in your environment. If you’re consistently exceeding the amount of physical RAM in your system, either do less (shut some programs down before running memory-intensive applications) or install more memory.