Speed Tweaks

Home Windows Speed Tweaks

When I was a Windows man I tended to have mid-range hardware and thus was desperate to tweak my system to the peak of its capabilities. In the end I knew quite a few things about tweaking Windows so it was quick as could be. The tweaks I describe below are the ones I found to be most effective -- there are none here that promise performance and don't deliver.

Most if not all these tweaks apply to Windows 9x. I couldn't afford XP (who can!) and was always happy with 98SE.

If you have any questions, I reply to all queries.

[1]Clean Reinstall Windows

Windows has a tendency to get "clogged." I don't understand it, but it's true. This happens even more rapidly if you mix an Internet connection and general curiosity. Not much software installs "cleanly", as in without interfering with how the operating system runs. If I had my way everything would come in a zip unless it absolutely had to modify your Windows directory, and then it will tell you what it was about to do!

Anyway, if you know what software you have and aren't nervous about the whole thing then I suggest you reinstall, if it's been a while you'll likely be most impressed by the results! For help I have a reinstall tutorial.

[2]Tweak your VCache

All files that get opened are loaded into RAM before they are read, and since RAM is incredibly faster than hard-disk Windows keeps the files avaliable in RAM until you run out of RAM. This is all good and helps programs stay nice and zippy. The problem is that Windows allocates all (almost all) available RAM to the vcache and supposedly frees up RAM as and when applications need it. Yet in my experience on systems with little RAM (<128) this is not really true.

I had a laptop with 32MB RAM, and the swapfile was forever being pummelled due to lack of RAM. This made it unusably slow. I reduced the maximum vcache size to 6MB and forever after I sang a song of unrequited joy. I had been monitoring my RAM usage for months and I couldn't get my free RAM to be better than 4MB, after this tweak it rocketed to 18MB, (later I got it to 23 but never better). And the difference in general zippiness was unbelievable.

Now I'll add that even users with loadsa RAM should insist on a maximum vcache size, I'm told that the most you'll probably need is 32MB and I'd agree, otherwise you're just wasting RAM, which maybe isn't a problem if you have loads of it.. Who knows?

  • 1. Open SYSTEM.INI in the Windows directory using a text editor (Notepad)
  • 2. Find the section "[vcache]".
  • 3. Make it read the following:

    [vcache]

    minfilecache=0

    maxfilecache=8096

  • 4. Save, exit, and reboot.

Please note that the settings are IN KILOBYTES! These are my settings, I use a minimum of zero, but that's because I love free RAM, I do not know if it is the quickest setting. With regard to the maximum setting, do not set it too low or you will sacrifice system performance, due to insufficient caching. A quarter of your RAM seems like a sensible starting place, however anything more than 32Meg seems excessive. Play with the setting, if adding a Meg improves system performance immeasurably then stick with it! Even if you have a Gig of RAM you should apply this tweak because without any maximum limit the VCache can rapidly take over all your available Physical Memory.

Apparently, Microsoft have made the vcache much better at freeing memory in ME and above.

[3]Reduce Background Processing

On every Windows setup there are dozens of programs running in the background performing services for your system. They come in two guises; the ones you can see, displayed in the System Tray, and the ones you can't.

Tasks in the System Tray

All those icons in your system tray are actually programs that reside in the background. And like all programs they use CPU cycles and memory at the expense of applications you load in the foreground. I've seen new computers come off the shelves with an excess of 10 icons in the tray! It's because of this IMO that XP has a systray hide function.

"Invisible" Background-tasks

They have no icon, or button on the task bar, but they are still there, minding their own business in the background. If you press CTRL-ALT-DEL now (simultaneously) you can see how many tasks are loaded currently on your computer. If you close all foreground tasks, and all the System Tray tasks that you can, you will be able to see how many tasks are running "invisibly" in the background. If you use a program such as WINTOP.EXE, a Kernel Tool from Microsoft, you will be able to see how much processing time and physical memory these tasks are using. Better descriptions of background tasks can be obtained using software like TaskInfo2000 available here, a very good piece of software that gives vast quantities of information about active tasks. You can use these in depth descriptions to help you determine why specific background tasks are actually loaded. TaskInfo2000 also reveals the more hidden costs of background tasks; the numerous library files that are loaded with the tasks, and which also use physical memory. However bear in mind that some libraries are shared, although my understanding is that in Windows, shared libraries tend to be loaded once for each application. I could be wrong on this however.

Disabling Background-tasks

In cumulation tasks such as tend to degrade performance because they use up RAM, so often nowadays it is more beneficial not to disable them. Personally I find the biggest issue with background-tasks is their instability. Programs like WMIEXE.EXE crash often and can bring down the whole system with them! They also are felt hard when you boot since they rarely seem to load quickly. You have to weigh it up, most systray icons are pointless and should be removed if only because taskbar space is valuable.

Most System Tray tasks can be disabled simply by fiddling with their settings. Sometimes however they can only be removed by more cunning means, and by the same means you can eradicate the more invisible background-tasks also. MSCONFIG.EXE (in WINDOWS\SYSTEM) allows you to toggle whether or not tasks get loaded at startup, thus you can test whether certain background tasks are necessary or not. I can assure you, the less background tasks running, the more stable and responsive your system will be.

Should you want a more permanant removal of the tasks, you will need to locate from where the individual background tasks are loaded. There are three possible locations:

  • The Startup folder

    The contents of this folder in the Start Menu is launched on startup. Delete what you want banished.

  • The Registry

    You will need to use REGEDIT, and head to the HKEY_LOCAL_MACHINE and HKEY_USER keys called RUN and RUNSERVICES in the path: Software/Microsoft/Windows/CurrentVersion. Delete the string values that point to the tasks you want to banish.

  • WIN.INI

    It is uncommon but possible that tasks will be loaded from here, the keys RUN and LOAD (under [windows], near the top) will contain any tasks loaded from here, delete what you want to banish.

Common Background-tasks

Here are some common background tasks with descriptions as to their purposes:

  • SYSTRAY.EXE

    This task is not THE System Tray(/Status Area)! It is in fact just a task that displays the volume control, battery meter and several other system icons. It doesn't use up much memory or CPU-time, so is pretty alright to leave running. Personally I prefer the taskbar space since I have a hardware volume control.

  • TASKMON.EXE

    Compiles logs of exectuble usage statistics. Used by MS Defrag and other file movers. Leave this one alone!

  • EXPLORER.EXE

    Explorer is actually also the Windows shell. Thus, one EXPLORER.EXE instance is required for the Start Menu, Task Bar and Systray to be present.

  • STIMON.EXE

    This application monitors communications from scanners and the like. As far as I know, it's a bit gimmicky, and is certainly bloated. If you can live without it, remove it

  • WMIEXE.EXE

    A wholly unecessary task. Click here for more information

  • RCPSS.EXE

    Suspected as being spyware that reports back to Microsoft. This is unlikely, but who knows..

For a huge and informative list of background tasks visit Pac's Portal.

Be aware that there are a few tasks that programs such as WINTOP will show, but for which you won't find startup launch commands. These tasks are required tasks loaded by Windows at boot.

Lastly..

My experience with Windows ME is limited, so I don't know what tasks ME may require (for applications like PC Health). Modern hardware can often install background, and more foreground tasks (desktop toolbars) that may be unnecessary. Bloated software often imposes itself on your system through background tasks "designed to make the software more functional", yeah, whatever.

[4] Reduce your Boot-time

  • disable SFC

    The Windows System File Checker launches every boot and takes probably half your boot time to do it's duties. The only way I currently know to stop SFC is by installing Windows with 98Lite. However I have been looking for alternative methods for a long time now, if you know of one, please mail me. However is disabling SFC risky? Well, to be fair, yes, if you aren't a competant Windows user. SFC is used by Windows to ensure that all major Windows files are uncorrupted. If it finds a corrupted system file, it restores a backup. Corruption shouldn't happen often and is far less likely if you know what you are doing.

  • BLA

    No I haven't run out of material for this page. Boot Log Analyser is a fab piece of freeware that analyses a recent boot log (compiled when requested at boot) and displays how long all boot elements take to occur. It's very useful, and most delay issues are surprisingly easy to address -- once they've been identified.

  • Delete WMIEXE.EXE

    If you experience "thirty second hourglass syndrome" at startup, or if this task is loaded in the background; click here for more information on this dratted executable!

  • Disable Floppy Seek

    I see this tip everywhere, but I have never noticed even a slight decrease in boot-up time. Oh well. I spose it must do something! It's in System Properties (Control Panel), in the Performance tab, under File System, Floppy Disk.

  • Uninstall Fonts

    Fonts are loaded into RAM on startup, so delete the ones you don't need, some programs install hundreds so monitor WINDOWS\FONTS!

  • Stop Tasks Loading on Startup

    Another reason to cut down on background tasks. They take time to load at startup. If you missed the last section, it talks all about background tasks.

  • Naff Tweaks

    Removing the two second pre Windows startup delay is a poor and a half tweak. What's two seconds? Anyway the delay is to give you the chance to prevent the GUI from loading, I'm a fond F8 pusher!

[6] Tweak your Filesystem

This tweak is rather good too. Basically because 98SE users tend to have more RAM nowadays, you can maximise it to give better performance with file operations (which are slow usually, very slow). Obtain Cachebooster and use one of the profiles it suggests. Read the README!

[7] Remove MSHTML

By far the most effective tweak I found was to remove Internet Explorer from Windows. There are two ways to do this, both at litepc.com. The "integration" of MSIE into Windows is amazingly performance sapping. If you have the nerve, remove it and feel the difference. Even better is to remove the whole MSHTML engine using 98Lite. I won't pull the wool over your eyes, removing MSIE completely can make life hard as plenty of software expects it to be there, but if you want a really tweaked system you'll learn to live with it in no time. Instead of MSIE use Mozilla or Opera, both far more functional browsers, for speed pick Opera, but Mozilla is a wondeful browser.

98Lite is a very good piece of software that will strip the bloat from Windows98/ME by making almost all the components of the OS optional. After clean installing Windows with 98Lite, I get a Windows 98SE install that is just over 44MB in size. *chuckles with glee*

Such an install is good for three reasons:

  • 1. Your system will be noticably faster
  • 2. Your system will be noticably more stable than it is now.
  • 3. You will have more space for NWN savegames

98Lite has two main options: it can make all Windows components optional without a reinstall of Windows, or with a reinstall. This may sound ridiculous, why on earth go to the trouble of reinstalling Windows unless absolutely necessary! However, if you reinstall Windows with 98Lite you will also gain from a remarkably tight and unbloated Registry. For me less than 400kB, and after tweaking just over 300kB. This is amazingly tiny, and an compact Registry will keep your computer ticking over with additonal speed.

There is a trial version of 98Lite at it's homepage. This version makes many Windows components optional, including MSIE, but not nearly as many as the full version. The trial version is 100% free, with no time limit. For real speed obtain the Windows 95 explorer.exe and use the shell-swap feature.

If you have any questions, please contact me. I really look forward to hearing from you!