The following is a list of XP tweaks that either do not work, do not
work as advertised, or that are better left alone.
Many of these once worked in some version of Windows and virtually
every tweak guide and program use these tweaks. My guide also used
to contain some of them. It has taken a considerable amount of
research and testing to come to these conclusions. While others have
incorporated these into other guides and tried to pass it on as
their own work I've done the investigation and benchmarking (and
AFAIK I was the first to publish these en masse on the web). I've
Googled up one side of the net and down the other. Sometimes I think
I've seen every page at Microsoft. I've hosed installs, applied and
removed settings, and spent more time tracking the registry than I
care to admit (far more than I would like my wife to know about!).
This was the first such page to dispell such myths enmasse.
Memory Optimizers
I've long railed against these things. The only thing that these
programs can do is harm real system performance. My advice, stay
away from any "memory optimizer" programs. Don't believe me?
How about taking renowned Windows guru
Mark Russinovich's word for
it? In his article entitled
The Memory-Optimization Hoax, RAM optimizers make false promises
he lays out the argument better than I ever could.
(I can't reprint the article because
of copyright.) His conclusion is that these programs are
"fraudware" and he has "yet to see a RAM optimizer that lives up to
any of its claims." Nuff said!
Prefetch Parameters
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Memory Management\PrefetchParameters]
"EnablePrefetcher"=dword:00000005
First, I fail to see where any advantage is gained by messing with
the prefetch settings. While disabling the prefetch service (or only
using setting 1 or 2) can speed boot times it only hurts overall
system performance.
Most tweak guides and popular tweaking programs use a setting of
5. There is no documentation to suggest that this setting works.
MS states that valid values are 0,1,2,3 and that this setting is
anded. The default value is 3. I tested using a setting of 5 on 3
occasions and there was no real improvement in boot times and hard
drive activity was longer at boot.*
Prefetching is a good thing, leave it alone. In addition well
written disk defrag utilities such as Raxco's Perfect Disk use the
layout.ini information for its optimizations.
Clean The Prefetch Folder
As stated above, Prefetching is a good thing, leave it alone. In
addition well written disk defrag utilities such as Raxco's Perfect
Disk use the layout.ini information for its optimizations. There is
one possible and optional exception to this, see the "
Clean, Defrag, Optimize " section of this guide for more info.
More about Prefetching
It still amazes me that anyone suggests messing with Prefetch
settings and files. They often quote their own "benchmarks" as a
source of info as to why you should mess with the settings. I've
spent over 3 years researching, using, testing, and tweaking XP. I
can guarantee you that the default settings for Prefetch and the way
XP manages it is the way to go. Anyone who suggests otherwise simply
does not understand the process.
Wanna research it yourself?
Superfetch
There has been much ado of late about the existence of a "
Superfetch " or " Superprefetch " setting. There is no such setting
in XP.
Always Unload Dll's
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer]
"AlwaysUnloadDLL"=dword:00000001
Here is the first and most important point. I can find no evidence
whatsoever that this setting works in Windows XP.** In fact, the
only official Microsoft technical documentation I can
find on this is
here. It clearly and unequivocally states,
"For operating systems prior to Windows 2000, you can
shorten the inactive period by adding the following information to
the registry.
HKEY_LOCAL_MACHINE Software Microsoft Windows CurrentVersion
Explorer AlwaysUnloadDll"
For arguments sake, let's just say that this setting does work in
XP. Windows XP uses a complex and efficient process to manage memory
operations. It keeps the dll loaded in case you need it again. For
example, if you open XYZ and then close it the dll remains in
memory. If you open XYZ again it will launch quicker because the dll
is already in memory. When/if XP needs the space in memory for
something else it will make the space by unloading the dll(s) that
aren't being used. If this setting actually did work, you have hurt
your overall performance because you unloaded a dll when it didn't
need to be and caused the system to have to load it again when
called upon.
note - For those who state that this tweak would only work in IE.
The key is "Explorer" as in the shell, not "InternetExplorer" the
browser. Also, whether you make a new key, sub key, entry, or any
combination makes no difference.
Set Irq Priority
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\PriorityControl]
"IRQ8Priority"=dword:00000001
I
can find no documentation that XP supports this setting. I can find
no evidence that this setting works in XP.** If it did work I fail
to understand any advantages you might gain. I'm not even sure if
it's possible to reassign IRQ priorities in this manner XP and if
you could I'm pretty sure that this key wouldn't be how you do it
(XP uses/accesses/manages IRQs differently than previous versions of
Windows).**** They use irq 8 because it's (usually) the CMOS/real
time clock.
Disable Paging of Kernel
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Memory Management]
"DisablePagingExecutive"=dword:00000001
Under all but the most very extreme circumstances it does nothing.
What this setting does is force XP to keep the kernel (the core of
the operating system) in RAM. This means that the kernel will reside
in the fastest storage area in your computer. Sounds great right?
Guess what? XP does this anyway unless the system comes under
such an extremely heavy load that it needs the space. The very
millisecond that the system has free memory, it will put the kernel
right back into RAM. If the system is in such dire straights that it
needs to use the space that the kernel is using I would say you are
on your way to a crash and you better let whatever wants the space
have it. You also better add more memory ASAP.
Large System Cache
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Memory Management]
"LargeSystemCache"=dword:000000001
This setting is also achieved by going to Start > Settings > Control
Panel > System > Advanced > Performance Settings > Advanced > Memory
usage = System Cache.
Under XP this tweak could be of some value under various odd
circumstances. However, it causes problems with many
drivers/hardware/applications.*** This tweak is really designed for
machines running as a server. If you use this tweak and have
problems don't be whining at the driver/application writers for
writing code that takes advantage of the way XP uses memory. They
didn't ask you to turn your machine into a server.
IoPageLockLimit
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Memory Management]
"IoPageLockLimit"=dword:somevalue
I
can find no official documentation on this regarding XP. Suggestions
seem to indicate that this setting doesn't work on any NT based OS
from W2K SP1 and beyond. I can find no evidence that this setting
works in XP.**
Optimize Boot Files
There are 3 keys related to "tweaks"Â about optimizing boot files:
1:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction]
"Enable"="N"
Quote from MS:
|
"Accepted values
for this entry are Y or N. If the entry is set to Y,
Windows automatically optimizes the file location for
boot optimization. This optimization occurs
automatically if the system is idle for 10 minutes. Boot
optimization improves startup time by locating startup
files in contiguous clusters on the volume, reducing the
movement of the disk head when reading the
volume."
|
2:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OptimalLayout]
"EnableAutoLayout"=dword:00000000
Found in TweakUI under the "General" section, "Optimize hard disk
when idle". XP already does this by default but this key is not in
the registry. Either you or some application has to put this key in.
The key exists so that a non-Windows disk defragger can manage the
process.
3:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Prefetcher]
"BootFilesOptimized"=dword:00000001
"BootFilesOptimized"=dword:00000001
First and most important, as far as I can tell this is an
informational key, not a program setting key. Second, lets say it
does change the program behavior, the default is to have XP optimize
the boot files. So, why wouldn't you want this? Third, if you use a
3rd party defrag program it may/will modify or delete this value.
Changing the existing settings may/will screw things up.
These keys have NOTHING to do with how the full/manual disk
defragmenter works, as in when you run the Windows GUI disk
defragmenter program
(see note #5), this despite
what many XP "experts" have opined. XP is set up by
default to:
1
- Rearrange boot files when idle for a period of time (10 minutes).
and
2
- To do a "partial defrag" of files every 3 days (what bootvis
does).
The "rearrange" part is where it finds all the files needed for boot
and places them in one spot on the disk.
(Prefetch value 1)
The partial defrag is where it does the same thing for all the items
in the prefetch folder layout.ini file. (Combines Prefetch value 1
(boot) and 2 (apps) = value 3)
For best performance leave these settings alone, these are features
not bugs. Well written disk defrag utilities such as Raxco's Perfect
Disk may/will adjust these settings because it is now managing your
drives defragmenting process.
*****Conclusion
I'm sure some will argue with my conclusions. I'm always looking for
information about new tweaks and why tweaks either do or do not
work. I will entertain arguments about this information but I will
require a few things:
1
- You must submit documentation for your argument from a legitimate
source. In matters involving the registry it should be from
Microsoft or from some entity of equal weight.
2
- I hear things like "my benchmarking" and "my tests". That, to
be quite frank, is a load of crap. What "benchmarks"? What
"tests"? Any benchmarks/tests used in your argument must be fully
documented. They must also be able to be replicated and if your
argument has any merit, I will attempt to do just that. If it can't
be replicated it fails the scientific method and the argument is
null. I've already benchmarked/tested these settings extensively.
I know this sounds rather harsh but I get email from people wanting
to argue this without anything to back up their argument.
No comments:
Post a Comment