Tweaking Optimizing Windows.pdf - GEGeek
Tweaking Optimizing Windows.pdf - GEGeek
Tweaking Optimizing Windows.pdf - GEGeek
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
The registry key defaults to zero which means 256KB. Change the DWORD value to 0x200 for 512KB or 0x400 for systems with<br />
1MB of L2 cache. Reboot to make this change. I've made this change on a few servers and workstations. It makes a noticeable<br />
difference. This tweak can be implemented by using XenTweak.<br />
8. Increase your I/O<br />
Originally considered a tweak for high volume file systems only, the mad progression of yesterday's server-power into the home has<br />
changed the audience of those optimising the IOPageLockLimit registry value. By default, the value is set to 0, which NT translates<br />
into 512KB. For most users with an ample amount of physical memory (RAM), leaving this setting as 0 will not negate them any<br />
caching performance increase. A machine with heavy file I/O traffic and a fair amount of unused physical memory is just begging for<br />
this tweak. Such a system would likely benefit from having an IOPageLockLimit of 64 to 128 times the total physical memory size<br />
measured in MB, but then recorded in KB (you'll see what I mean in a second). So, for example, a 128MB system should be set<br />
between 8192KB and 16384KB, as the decimal setting. This is a good formula for systems with 128MB of RAM, and higher.<br />
For machines with less memory, I suggest starting with a value of 1024KB, and utilizing a "real-world" benchmarking suite like<br />
ZDNet's Winbench 99 to bench the performance effect of raising the number of bytes locked for I/O operations. Raise this value by<br />
1024KB per trial, until you see a point of diminishing performance returns. This very well may be 1024KB, 4096KB, or even higher.<br />
Each system really requires a different setting. Not all systems experience the same amount of file I/O operations, and not all<br />
systems experience disk I/O bottlenecks in the same way, since processor power, disk access & transfer rate, and memory size all<br />
play a part in overall performance. So, be prepared to tweak here and there.<br />
How To Implement:<br />
Make certain that you've got everything else in working order, including UDMA (if you have devices that support it). Launch a<br />
registry editing tool of your choice (regedit.exe or regedt32.exe will do).<br />
Advance down to the following registry key:<br />
HKLM\System\CurrentControlSet\Control\Session Manager\Memory Management<br />
In this key double-click on the IOPageLockLimit registry value to open a DWORD editor window<br />
(default value of 0 = 512KB).<br />
Change from Hex (hexadecimal) to Decimal, change the value in the data field to reflect your preferred allocation size in KB (1024,<br />
2048, etc.).<br />
Close the registry editor app, and reboot to implement the change.<br />
RAM IoPageLockLimit<br />
(MB) Decimal Hex<br />
4 4096 1000<br />
8 8192 2000<br />
16 16384 4000<br />
32 32768 8000<br />
64 65536 10000<br />
128 16384<br />
256 65536<br />
512 131072<br />
But I've seen the value in bytes, not KB. In my years of using NT I've come across a few folks who've claimed that the numerical<br />
values for this tweak should be entered in bytes, and not kilobytes (e.g., 4096000, not 4096). Nonetheless, the KB values work<br />
like a charm.<br />
9. Disable extra sub-systems<br />
If you use the UNIX tools that accompany the NT Server Resource Kit, you won't want to kill POSIX. Other than that, chances are -<br />
you don't need these. Umm, most everyone who is a tried and true NT tweaker should busta cap in these two subsystems. Other<br />
than that, chances are - you don't need these suckas. There's a lot of debate concerning just how much a tweak like this will earn<br />
ya in terms of improved performance. I have consistently argued that the performance benefit for implementing this optimization is<br />
marginal at best, but what I have noticed (as have many others) is that the CSRSS.exe process earns a smaller footprint.<br />
Additionally, the process /seemed/ to grow a little less aggressively the more I opened and closed applications. This is a tweak for<br />
the true Tweak freak. Unlike some of our more apocalyptic tweaks (the UDMA tweaks constantly brings in reports of people loosing<br />
bowel control after witnessing the improvements gained), this is for the NT lover who just knows that there's no sense in these<br />
subsystems being enabled when they're not ever put to use.<br />
How To Implement:<br />
Launch <strong>Windows</strong> NT Explorer, and browser to the %windir%\system32 subdirectory.<br />
Rename these files: OS2.exe, OS2SS.exe, and PSXSS.exe (to filename.3x3, or whatever you prefer)<br />
Shutdown any open programs, and reboot to implement the change. Laugh at how seriously easy this is.<br />
10. Use large system cache<br />
While <strong>Windows</strong> NT Server and Workstation are alike in many ways, the default methods they use for disk caching differ greatly. The<br />
Large System Cache option is one that can affect your disk I/O performance up to 50%! On NT Server, the Large System Cache<br />
option is enabled, but disabled on Workstation. The two different settings effect how the cache manager allocates free memory. If<br />
the Large Cache option is on, the manager marks all the free memory, which isn't being used by the system and/or applications, as<br />
freely available for disk caching. On the flip-side (with a small cache), the manager instead only sets aside 4MB of memory for disk<br />
caching in an attempt to accelerate the launch of applications. Or in a more technical approach, if enabled the system will favor<br />
system-cache working sets over process working sets (with a working set basically being the memory used by components of a<br />
process).<br />
This setting may very well benefit users with less than 96MB of physical RAM who don't have more than 2-3 applications open at the<br />
same time (those of you with 64MB or less are probably pushing it here). However, without testing this tweak on such a machine,<br />
I'd have to suggest 96MB of RAM or more as the rule for implementing this change. I've tested the change on my machine (Celeron<br />
300a @ 450Mhz, 256MB PC100 RAM, WD Expert 18gb 7200rpm drive), and have posted some Winbench benchmark results below.