Another day, another program that spreads misinformation. You would think by now people would do five minutes of research before providing others with advice. In this case the FireTune Tweak Utility made by TOTALidea falls for the old /prefetch:1 shortcut myth. FireTune claims to improve Firefox performance using Placebo effect tweaks like this? I wonder how many other useless tweaks are included in this utility?
Ryan Myers of the Microsoft's Windows Client Performance Team has already debunked this Myth months ago. Yet judging by the download numbers at MajorGeeks over 600,000 people have been suckered in, lovely.
Misinformation and the The Prefetch Flag
The /prefetch:# flag is looked at by the OS when we create the process --however, it has one (and only one) purpose. We add the passed number to the hash. Why? WMP is a multipurpose application and may do many different things. The DLLs and code that it touches will be very different when playing a WMV than when playing a DVD, or when ripping a CD, or when listening to a Shoutcast stream, or any of the other things that WMP can do. If we only had one hash for WMP, then the prefetch would only be correct for one such use. Having incorrect prefetch data would not be a fatal error -- it'd just load pages into memory that'd never get used, and then get swapped back out to disk as soon as possible. Still, it's counterproductive. By specifying a /prefetch:# flag with a different number for each "mode" that WMP can do, each mode gets its own separate hash file, and thus we properly prefetch. (This behavior isn't specific to WMP -- it does the same for any app.)
This flag is looked at when we create the first thread in the process, but it is not removed by CreateProcess from the command line, so any app that chokes on unrecognized command line parameters will not work with it. This is why so many people notice that Kazaa and other apps crash or otherwise refuse to start when it's added. Of course, WMP knows that it may be there, and just silently ignores its existence.
I suspect that the "add /prefetch:1 to make rocket go now" urban legend will never die, though. I know that at least one major company ships products with it in their shortcuts, without ever asking us... just for good measure, I guess. :-P All it does is change your hash number -- the OS is doing exactly the same thing it did before, and just saving the prefetch pages to a different file.
To sum it up adding /prefetch:1 does nothing but force Windows to use a different prefetch (.pf) file for prefetching Firefox other then the one it was using. In Windows Media player creating separate prefetch files for each mode makes sense for Firefox it creates a second prefetch file for no reason. This does nothing to improve performance loading Firefox. Now if the makers blindly added this useless tweak in I highly doubt they thoroughly tested and researched all the other changes this utility makes.
This doesn't sound like a big deal until you realize you have over 600,000 people telling everyone about this program and a shortcut tweak that does absolutely nothing. Maybe the makers of the program will learn but I doubt it.
Update December 13, 2005 - Success!
Firetune v1.0.9 removes the useless /prefetch:1 shortcut tweak.