A few ideas on how to improve performance on Windows systems. This is a work in progress. For now it is just a notepad where I jot down ideas to try the next time I have my hands on a Windows box, which thankfully isn’t very often.
First, insure you are trying to fix the right problem. Since Windows is often to blame for performance issues, it is tempting to jump to conclusions and not consider other possibilities. That would be a mistake. Ask probing questions of the user to elicit useful symptoms and try quick diagnostics to eliminate other possibilities such as:
- Hardware. I usually check hardware before software. When warranted, I boot the hardware using a Linux live distribution and see how the hardware performs with a known good OS. I rarely find hardware failures, but being easier to check than software it is a simple matter to eliminate that possibility.
- A poorly performing network. Measurement Lab has a robust set of tools to diagnose external network problems (requires Java). There are a number of things you can do to diagnose and troubleshoot local Windows networking, and booting into a Linux live distro will give you additional diagnostic tools.
- Malware consuming the system’s resources. Consider performing a security audit — something you really should do on any Windows box regardless of its performance.
- Unreasonable user expectations. Sometimes the hardware simply isn’t adequate for the installed software. When appropriate I suggest giving Linux a try.
But if you’ve eliminated the above possibilities, then read on:
Install a hardware monitor. Keep your eye on it as you perform the following tasks and address identified issues accordingly. When you’re finished, leave the hardware monitor in place. Suggest that the end user use it to identify bottlenecks, such as insufficient RAM for normal tasks.
In Vista or later, run the built-in performance diagnostics (Control Panel – Performance Information and Tools) and follow the provided links. Use the provided information to prioritize your efforts.
In Vista or later, turn off Aero theme (TODO: Document how) and deactivate other unneeded eye candy.
One example of unneeded eye candy is the GUI in Vista and later. Classic Shell (open source) installs a lightweight XP-like GUI that noticeably reduces latency in Vista and Windows 7. A walkthrough is available here.
Use CCleaner or a similar utility to find and deactivate unneeded programs being launched on startup.
For portable devices, open Control Panel – Energy Options and insure that the settings for performance vs. battery life are appropriate.
TODO: List normally unneeded services that can be deactivated and document how to do this.
Replace heavy applications with lighter alternatives. I often recommend:
- Antivirus: F-Prot, an exceedingly lightweight antivirus that outperforms bloatware like McAfee and Symantec (Norton). Proprietary.
- Image viewer: IrfanView, to replace the lumbering image viewer built in to Windows. Proprietary; no charge for noncommercial use.
- IM client: Pidgin, being multiprotocol, can replace the multiple heavyweight IM clients many users encumber their computers with (Windows Live Messenger, Yahoo Messenger, etc.). Open source. If you’re feeling helpful you might assist the end user configure his accounts.
- Music player: Quod Libet, to replace the porcine iTunes. Open source.
- Office suite: LibreOffice is a full-featured alternative to Microsoft Office and is somewhat lighter. Lighter still would be to select à la carte only those office applications the user actually needs. Abiword, for example, is an excellent word processor, and gnumeric is a fine spreadsheet application. All open source.
- PDF viewer: Sumatra, at less than 2 MB, to replace the 100 MB Acrobat Reader. Open source.
- Video player: SMPlayer, to replace Windows Media Player. Open source.
- Web browser: Opera, the fastest full-featured browser I know, to replace Internet Explorer. Proprietary; no charge.
In the Control Panel, open Default Programs. Make the newly installed programs the default for their type and associate them with their respective file extensions.
Tweak XP settings for faster performance