Monday, January 22, 2007

Performance: Make Windows XP Faster (Advanced)

Warning: This is an advance tip, this article covers how to change critical system configurations areas of your computer and its OS that can prevent it from booting properly if modified incorrectly. Follow this advice in this article at your own risk, all liability for any problems that occur are the responsibility of the reader performing the actions. As always its recommended that you have a complete backup of all your data before proceeding.

When you do a fresh install of Windows XP it starts relatively fast (in 30-50 seconds) compared to how long it might take to boot today (maybe over a minute). Generally, there are three main causes of slow booting, bad configuration, useless software, and hardware issues.

To fix these problems there are two things that you can do. One, optimize your existing Windows configuration. Two, add new and faster hardware.

Before I ever recommend adding hardware to your computer, the first thing I would suggest you do is try to optimize your systems configuration. Then if the current performance levels don't satisfy you, then you should add new hardware.

One thing that you will notice in the instructions below, is that in order to reduce your boot time you will have to make certain compromises with features you may or may not need. I try to document as many of the issues that you might encounter by enabling or disabling these features that I am aware of.
Note: Its next to impossible for me to provide the exact steps for all the possible configurations that are available for all systems. The steps below are only general guidelines you can follow to help optimize your system.
Optimizing Your Windows Configuration:
  • Optimizing your BIOS: There are features in your computer's BIOS that can make the boot-up process take longer. By enabling or disabling certain features you can shave a few seconds off the boot time. To enter your systems BIOS you will need to press a key like the Delete or F1 when you see the computer's boot screen when its first starting (consult your computer's manual to find the proper key to press):
    • Enable the quick POST (Power on Self-Test) if your BIOS supports this feature. If not you can disable the POST feature all together.
      • Note: By disabling this feature you prevent your computer from running its hardware diagnostics at boot time, which will prevent you from being notified about problems that could have been detected.
    • Make sure your hard drive is selected as your first boot device. Most of the time the floppy or CD-ROM drive are selected as the first boot device.
      • Note: By making your hard drive the first boot device, you will not be able to directly boot from a floppy or CD. If you need this functionality at a later date, you will need to change the boot order in the BIOS again.
    • Most modern system don't include a floppy drive, so if your BIOS has an option to search the floppy drive you might want to disable it.
  • Modifying the BOOT.INI: Set the TIMEOUT feature in your BOOT.INI file to (zero). This feature causes the Windows boot manager to wait a certain number of seconds before its starts. Generally you only need this feature if you have multiple copies of Windows installed on your system or you need to access the recovery options (if isntalled). Note: If you do have multiple options in the Boot Manager, by changing the TIMEOUT to zero option you you will only be able to boot to your default selection.
    • To modify the BOOT.INI file you can use the MSCONFIG tool.
      • From the Run... command type "MSCONFIG.EXE"
      • Click the BOOT.INI tab
      • Set the Timeout field to '0' (zero) seconds
      • Press the OK button
        • Note: You can also prevent the Windows XP bootscreen from loading by selecting the default boot path, and checking the NOGUIBOOT checkbox option.
  • Use a static IP address: By assigning a static IP address to your computer for your local network, you prevent the delay it takes to get a new IP address from the DHCP server every time your computer boots. Note: If this is a notebook computer by disabling this feature you prevent it from automatically picking up a new IP address when you visit a foreign network.
    • Open the Control Panel folder, and then open the 'Network Connections' folder.
    • Right-click the network adapter card and click Properties.
    • On the General tab, select 'Internet Protocol (TCP/IP)' in the list of services
    • Press the Properties button. From here you can assign a static IP address.
    • Press the OK button when done.
  • Disable Remote Assistance/Desktop: If you're not using the Remote Desktop or Remote Assistance feature, you should disable them. Note: By disabling this feature you will be unable to remotely administrate your system over the network from another computer.
    • From the Start menu, right-click 'My Computer' and select Properties.
    • Click the Remote Tab.
    • Uncheck the Remote Assistance and/or Remote Desktop checkboxes.
    • Press the OK button
  • Disable Unused System Resources: Services, device drivers, and startup applications all stay in memory when your computer is running, and all of them are consuming CPU resources whether you're using them or not.
Warning: You have to be extremely careful when removing drivers, stopping/disabling services, and disabling startup applications. By disabling the wrong resources you can prevent Windows from booting. If you don't know what you're doing, skip this step.
    • Device Drivers: Open the Device Manager, from the View menu select 'Show Hidden Devices' and uninstall any drivers that you're no longer using.
    • System Services: From the 'Administrative Tools' folder, open the Services console. Review the services and stop and disable any services that you may not be using. Disable things like the 'Index Service' or 'Fast User Switching' if you're not using them.
    • Startup Applications: Download Sysinternals Autoruns, and disable any startup applications that don't need to be loaded. Check the WinTasks Process Library to find out what these applications are for. This site also contains references to malware executables and what they do.
  • Update Your Device Drivers: Microsoft and other device manufactures update their device drivers from time to time. By making sure you have the latest driver, you might fix a problem that could be making your computer take a long time to load.
    • To upgrade your device driver visit WindowsUpdate or the device manufacturer's web site and download the latest software for your hardware.
  • Remove Unneeded Fonts: If you have more then 500 fonts installed on your system, this can increase your computer's boot time. The reason for this is that the more fonts you have, the longer it takes for the system to process them.
    • See the following article for instructions on how to remove system fonts.
  • Remove Unused Applications: Some applications can install services that are constantly running in the background whether you're using them or not. By uninstalling unused applications that you're not using, you can prevent these services from being loaded and run.
    • From the Control Panel folder, open the 'Add/Remove Programs' applet. From here you can remove most programs that you installed on your computer.
    • From this control panel, you can also press the 'Add/Remove Windows Components' button, to remove such applications as MSN Messenger, Indexing service, and more.
  • Checking the Hard Drive: Running a scan disk on your system on a regular basis can help keep Windows running at its peak performance. If you're having problems (such as bad disk sectors) with your hard drives media, then files can get corrupted.
    • Open My Computer under the Start menu
    • Right-click on the C: (or whatever hard drive you want to check) drive icon, select Properties.
    • Select the Tools tab
    • Press the 'Check Now...' button, in the 'Error-checking' section.
    • Check the 'Automatically fix file system errors' and/or 'Scan for and attempt to recovery of bad sectors' checkboxes.
      • Note: The bad sector checking process can take several hours to complete depending on the size of your hard drive. Don't plan on using your computer during this time.
    • Press the Start button when you're ready to begin.
  • Make sure your hard drive is using the NTFS file system, its faster and more robust then the older FAT16 and FAT32 file systems.
    • To check the status of your drive's file system, open up the Windows Explorer and right-click the drive and select Properties. If you discover that your hard drive is not using NTFS, and want to convert the file system to it, read the following article.
      • Note: The NTFS conversion process can take several hours to complete depending on the size of your hard drive. Don't plan on using your computer during this time. Also, this process can't be undone once it has been started.
  • Running Drive Cleanup: Use the Disk Cleanup utility to remove excess files off your computer that you don't need anymore. This helps make sure that your hard drive will have enough space for they OS and its applications to be able write its files to the disk.
    • Read the following article on how to use this utility.
  • Scanning For Malware: Any type of Malware (i.e.: viruses, spyware, etc.) can and will consume system resources that will slow down your computer. It's a good idea to run regular scans of your hard drive.
    • Make sure that your system is running an anti-virus and anti-malware scanner, and make sure you keep these applications updated. Read the following article to find a list of free anti-virus/anti-spyware utilities.
  • Update Your OS and Applications: Its important to make sure that your running all the latest patches for your OS and applications.
    • Use WindowsUpdate to make sure your OS and Microsoft applications have the latest updates installed into them. Press the Custom button on the WindowsUpdate site to access all the non-critical updates.
    • For non-Microsoft applications, some program's include built-in version checking features to let you know if you're running the latest version of their software.
  • Enable/Disable System Animation: For the best system performance, turn off any or all unnecessary Windows XP animations, and disable Active Desktop. Windows XP also comes with several different predefined settings options that you can choose from
    • Open the Control Panel from under the Start menu.
    • Double-click the System icon.
    • Click on the Advanced tab
    • Press the Settings... button located under Performance section.
    • From here you can tell Windows to manage the animation, you can adjust it for best performance or appearance, and you can also customize which animations you want to enable or disable.
    • Press the OK buttons when done.
  • Optimize Your Swap File: Almost every version of Windows uses Virtual Memory, which means that you have a swap file on your computer. The swap file is used to holds the contents of your RAM to give your system more usable memory. There are a few simple tricks that you can do to optimize your swap file to allow your system to work more efficiently. Below are some articles that I have written on this subject.
  • Defragment Your Hard Drive: To help keep your hard drive in top shape, you should periodically defragment it to help provide the quickest possible access to your files. When you run a hard disk defragmenter, it rearranges the files on it so that their in a linear pattern so that they can be loaded quicker.
    • Here is an article on how to defragment your hard drive.
  • Enabling IDE DMA Access: There is a small chance the DMA (Direct Memory Access) option for your IDE ATA/ATAPI controller could be disabled in Windows. The DMA mode transfers provide the quickest possible method of moving data to and from your ATA device (such as your hard drive and CD/DVD drives). For more information about option, check out the following article from Microsoft.
    • Open the Device Manager on your computer.
    • Double-click the IDE ATA/ATAPI Controllers to display the available ATA devices.
    • Right-click on the Primary or Secondary IDE Channel and select Properties.
    • Click the 'Advanced Settings' tab.
    • Then in the Device 0 or Device 1 sections, in the 'Transfer Mode' drop-down menu, select 'DMA if available' only if the current setting is 'PIO Only.'
    • Press the OK buttons when done.
  • Checking Your Hardware: It's a good idea ever six months or so to perform some basic checks of your computer's hardware to make sure it running properly and to perform some basic maintenance.
    • It doesn't happen too often, but your computer's RAM can fail occasionally. If your computer randomly displays BSOD (Blue Screen of Death) while you're using it, or failing to start at all. This is a good indication your computer's RAM is bad.
      • There are two free popular utilities that you can use for checking your computer's RAM. There is Microsoft's 'Windows Memory Diagnostic' utility, or MemTest86. Both of these programs create a boot CD or Floppy that you can use to check your computer's RAM.
    • To make sure your hard drive is running in its peak condition, check the S.M.A.R.T. counters of your hard drive. If you don't know what S.M.A.R.T. is, they are performance and diagnostic counter that track the status of your drive. These counters track, temperature, errors, etc. To access the S.M.A.R.T. data on your hard drive, you can use a utility like HDTune.
    • Its a good idea to open your computer's case and blow out all the dust and debris that builds up. If you work in a dirty or dusty environment you should do it more often. You should also check all the fans they're working properly. Too much heat will kill a computer, or cause it to become unstable.
      • Sometimes it's possible that there are loose connectors in your system, it doesn't hurt to make sure that all the connectors are firmly seated in all your devices (such as the hard drive, optical drives, motherboard, etc.) Also make sure that expansion cards are firmly seated in their slots.
      • If your computer gets moved around a lot, your external connectors to the different devices attached to your computer can become loose. Make sure they're properly seated in the port that they're connected to.
      • Be aware of cheap capacitors that leak. All types of computer peripherals (including the motherboard and power supply) can fail prematurely do to capacitors that are leaking. If you can find evidence of this problem contact the manufacture and see if they will replace product even if its out of warranty. For more information on this subject, see the following article.
    • Check the manufacturer's web site to find out if there are any firmware update for your motherboard or other computer peripherals (such as your video card, sound card, etc.). These updates generally contain fix known bugs, and add new features and functionality.
    • Here is a series of articles that I wrote on 'General Windows Maintenance Tips' (part 1, part 2, part 3, part 4)
  • Buying Faster Hardware: Tweaking your system will give you small boasts in your system's performance. Although for greater increases in your system's speed you're going to need to upgrade your hardware. Here is an article to get you started.

No comments: