Saturday, April 14, 2007

Windows XP tweaking guide - make Winxp faster

Windows XP Tweaking Guide

by Martin Krohn

v1.2<-- please note the version number. v1.00 was when I posted it and I have revised and added some more things in a few sections.

I have broken this guide into 6 parts. Networking, file system, memory performance, freeing up memory, startup/shutdown and then the other stuff. I've tried to pack as much performance related tweaking here as I can but there's always more to be uncovered. I will update this article as frequently as possible. I know there's a million tweaks that I'm missing here but I am trying to keep this guide dedicated to tweaks that directly affect your performance. I'll put together a second guide about the annoyances and other things but keep in mind this is ONLY performance stuff. If you know of something that affects the performance quite a bit and it's not listed here please post a thread in our Windows forum.

We of course have to spotlight Enemy_Of_Evil and http://www.mods4me.com/forums/showthread.php?s=&threadid=45 for the basis of this article

There's a LOT of potential damage that can be done with the data within this article. You will have to understand the risks. You could potentially cause your system to quit booting and many other things. You will want to make a backup of anything important just in case. Please move on if you understand that and are willing to risk things.

What are the tools of the trade?

Notepad - With this baby you can get out of having to spend much time in regedit ;) What you will want to do is create a file call tweaks.reg on your desktop. After that files has been created right click on it and select edit. Next paste what I have in italics into that file. You will have to read what I have said about each tweak and you'll have to change some of them according to your system.

Regedit - Knowing how to use it to edit your registry is a MUST for this guide. It is the only tool that we're using here.

To run it you will have to click on the start menu and select run. From there you type regedit. From there you can browse around and find all kinds of things to change/edit. If you're new to this make sure you look but NOT touch. Make sure that you make a backup before you touch anything. To do this you click on File and then export. Save the registry file someplace safe and if your screw something up you will have to return to regedit and either fix your changes or import the old file. I suggest you reboot after every line that you change since you'll have to restart windows in order for the changes to take affect. You don't want to do too many edits at a time. This will slowly help you safely tweak things out.

Basically browsing the registry is setup just like browsing folders in windows explorer. When I say something like "the key you need to edit can be found here HKEY_LOCAL_MACHINE/Software/Microsoft" you will click on the HKEY_LOCAL_MACHINE folder and then look for the Software folder and then the Microsoft folder and the key you either have to add or edit will be in there. I will tell you very specific keys to add or edit. You will see the keys within that folder in the right side box. Right Click on them to see what all you can do with them.

Alot of these tweaks can be done in Cache man and Tweak XP but what kind of a guide would this be if I only pointed you to software?


File System

Your drives are the biggest bottleneck in your system and there's a few things that you can do to greatly improve the performance of them. If your main use for your computer is running applications all day long this is of course a MUST! Surprisingly the biggest things that slow NTFS down are "features".

Turn off indexing

The newer version of NTFS introduces some new "features" One of these is a file indexing thing that enables you to search for files and also text within files very quickly. How is this done? Well... every time you add a file it is logged into a DB that can eat away at your drive space rather quickly and slows you down while doing so. I would suggest everybody turn this off because I don't know of anybody who does enough searches on their drives to sacrifice as many resources as this does.

1. Browse to your hard drive either through Windows Explorer or through my computer
2. Right click your hard drive icon and select properties.
3. At the bottom of this window you'll see "Allow indexing service to index this disk for faster searches," turn this feature off for all of your drives by unchecking the box and clicking ok..
4. After that a window will appear and you'll want to choose apply to all folders and subfolders if you want the full benefit. You could turn this on for selective folders that you search frequently. For the most part you want this off for all of your folders.

CDFS tweaks

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\CDFS

Look for that registry key, if not there, we must create a new key, then add the following values

CacheSize, this must be added as a binary value, then type in this value: ff ff 00 00
Prefetch, this key must be added as a DWORD value, then type in this value: 4000 hex
PrefetchTail, this key must be added as a DWORD value, then type in this value: 4000 hex

Or in your *.reg file...

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\CDFS]
"CacheSize"=hex:ac,09,00,00
"Prefetch"=dword:00004000
"PrefetchTail"=dword:00004000

Convert Fat 32 to NTFS

I won't bore you with the details about the differences between NTFS and Fat32. You'll just have to trust me on this one. NTFS is faster and more secure than Fat32 is on larger drives. On smaller like sub 25Gb drives Fat32 is faster. NTFS's speed advantage only kicks in on higher capacity drives. There's a rather simple command that isn't very easy to find that will convert your FAT32 partition to NTFS. Open the command prompt by hitting start and then selecting run and type: "Convert C: /FS:NTFS". Replace C: with whatever the drive letter you'd like to convert is. Also make sure there is a space between the C: and the foward slash (/). Once you press enter it will ask you for confirmation and press Y. Then press Y and enter once more to reboot. It will take between one hour and 15 minutes to convert to NTFS. Now you can set passwords for files and use encryption. This also works for windows XP Home. Unfortunately this makes the default cluster size 512 bytes instead of the 4kb that a clean format of NTFS provides.

Make NTFS run better ;)

Now that you've converted over to NTFS or you had it already there's a few things that you'll want to do to make it run faster. NTFS was designed more for the server market and there's some features that we don't really need and can either tune a little bit or disable all together.



1. Last access update is another feature that I'd turn off and will help you get a little more performance out of your hard drive. What is this? NTFS updates the date stamp on directories whenever it opens the directory. To turn this rather useless feature off browse to HKEY_LOCAL_MACHINE\SYSTEM\CurrentContolSet\Control\Filesystem and change the NtfsDisableLastAccessUpdate registry entry to 1

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem]
"NtfsDisableLastAccessUpdate"=dword:00000001

2. Short names is something that is needed for DOS compatibility. Most of us will want to turn this off. The only time you'll want to leave this on is if you are supporting DOS or win 3x based clients. I think all of us have some machines like that in our CLOSET but certainly not in use. To turn this off you'll have to go browse to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Filesystem in your registry and change the default value of the NtfsDisable8dot3NameCreation registry entry to 1.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem]
"NtfsDisable8dot3NameCreation"=dword:00000001

Or to put both of them to use insert this into your *.reg file

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem]
"NtfsDisable8dot3NameCreation"=dword:00000001
"NtfsDisableLastAccessUpdate"=dword:00000001

Reboot after making changes.

Memory Performance

Improving memory performance can be done simply by preventing your hard drive from being used for cache. This is only useful with 256Mb or more of RAM.

Everything that you'll need to edit here can be found in HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Session Manager/Memory Management

So of course add [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management] to your *.reg file.

Disable Paging Executive
This will prevent pages sections from RAM going to the hard drive. If you have a large amount of RAM at least 256Mb (I suggest 512) you might want to keep the data in your RAM to improve your performance considerably due to reduced amount of hard drive swappage. The entry that you will want to modify is called DisablePagingExecutive. Changing this from 0 to 1 will keep the data in your RAM.

"DisablePagingExecutive"=dword:00000001

System Cache Boost
The XP kernel can be loaded into your RAM with a simple registry edit. This can greatly improve performance since the NT Kernel will always be in your RAM. With this edit you will allocate roughly 4Mb of your RAM for the kernel. Sometimes more RAM is used but most of the time it is only 4Mb. The entry that you will need to find is called LargeSystemCache and you'll need to change this from 0 to 1 in order to enable this.

"LargeSystemCache"=dword:00000001

To put both of these RAM tweaks into use you'll add something like this to your reg file

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
"DisablePagingExecutive"=dword:00000001
"LargeSystemCache"=dword:00000001

Disable Virtual Memory

Right click my computer

Click the advanced tab

Click the settings button under performance

Click the advanced tab

Click change by Virtual Memory

If you have more than 512Mb of RAM I suggest you click no paging file

Click set then ok 3 times and you'll need to reboot

This may cause your system to quit booting

DirectX based games that use large textures will often times NOT be able to run even when you have 512Mb of RAM.

Adobe products also have problems with this it seems at ANY RAM size. It's worth trying but if your adobe programs quit working afterwards this will most likely be the reason.

The only limitation is that the drive can only be 32MB in size. :(


Freeing up memory

Remove MSN

X:\Windows\inf\sysoc.inf

msmsgs=msgrocm.dll,OcEntry,msmsgs.inf,hide,7

To this:

msmsgs=msgrocm.dll,OcEntry,msmsgs.inf,,7

Remove the Autoplay

Hit start, run and then type in gpedit.msc (NOT in home version). Browse Computer Configuration -> Administrative Templates -> System

Autoplay begins reading from a drive as soon as you insert media in the drive. As a result, the setup file of programs and the music on audio media start immediately. To stop this right click on properties for Turn off autoplay and select enable then click ok.

MSconfig is a great place to free up a considerable amount of RAM. You can remove alot of things from your startup including services. You'll want to first uncheck all un needed programs on your startup.

The best place to make changes to services can be found with just a few clicks.

Control Panel --> Administrative Tools --> services

From there you will want to look over all the different services that are running. When you first install Windows XP you will have 89 available services and 36 of these are set to automatically start as the DEFAULT! There's really only 5 that are needed to run. You should never set these to disabled. It can cause quite a few problems if a program requires them to run. Setting these to manual will allow them to run if needed but won't automatically start with windows. This will free up quite a bit of resources by only running the services that are truly needed.

The only place that I've found that really explains these services well can be found HERE I'm sure you'll be as surprised as I was to see how much garbage is on/in Win XP by default. When properly tweaked you can really get alot more performance out of this OS.

Unloading DLLS

Explorer does not unloadDLL files from memory right away. They always remain in the memory for a period of time that is often quite lengthy. To unload DLLs when you are done with them navigate to

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer

This time you'll have to create an entry called AlwaysUnloadDLL and set the value to 1.

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer]
"AlwaysUnloadDLL"="1"

Shutting down/ Startup

There's quite a few things related to shutting down your system faster located in HKEY_CURRENT_USER\Control Panel\Desktop

AutoEndTasks (set to 1) will automatically kill hung up programs for you. The next one is HungAppTimeout (make sure it's 5000). Next up is WaitToKillAppTimeout. Which should be set to 4000 (default is 20000).

Since we have the programs being killed after a certain amount of time you will also want to do the same for services. Change the WaitToKillServiceTimeout to 4000 as well.

[HKEY_CURRENT_USER\Control Panel\desktop]
"AutoEndTasks"="1"
"HungAppTimeout"="5000"
"MenuShowDelay"="400"
"WaitToKillAppTimeout"="4000"
"WaitToKillServiceTimeout"="4000"

The XP Prefetcher

Windows XP has a service called the Prefetcher. It basically monitors the different programs that start during startup and helps them launch faster.

To find this tool browse to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters

The important key is EnablePrefetcher. Default value for this is 3. You will want to try numbers between 1 and 6. 5 seems to work best for me but your mileage may vary.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters]
"EnablePrefetcher"="5"


Cleaning Prefetch

Just like everything else in windows after a while the prefetch ends up with files that haven't been used in quite a while. Every so often you should browse to C:/windows/prefetch and clean out what you don't need.

Disable Auto reboot

1. Right Click My computer and hit properties
2. Go to Advanced
3. Under the Startup and Recovery section, click Settings...
4. Under System Failure un-check "Automatically restart"

Crappy "Features"

Windows Xp has a number of features that are not needed by most of us and use up valuable resources.

Automatic Updates

Right click my computer, hit properties
Automatic updates
Turn off

Turn off System Restore

Go to your Control Panel

Click System

Go to the System Restore tab

Check the box Turn off System Restore for all drives

For some of you disabling this isn't a good idea. If you are going to do this you should make this the very last tweak that you try. You should also turn this back on before you make any major changes to your OS. This is a way that will help free up some resources but it comes at a cost. Windows XP by default has many many safety nets. It will improve system performance if you're flying without the safety net. BUT if you fall without the nets properly in place then you die.

Turn off Automatic Updates

Go to your Control Panel

Click System

Go to the Automatic Updates tab

Click the turn off updates box

Turn off user tracking

Run gpedit.msc

User Configuration --> Administrative Templates --> Start Menu and taskbar

Look for Turn off user tracking and double click on it

Select Enable

This setting prevents the system from tracking the programs users run, the paths they navigate, and the documents they open. The system uses this information to customize Windows features, such as personalized menus.

If you enable this setting, the system does not track these user actions. The system disables customized features that require user tracking information, including personalized menus.

The Default start menu relies on this. If you're using the classic start menu like I am then make sure you turn this off cause it doesn't do any good for you.

Remove Built in CD burning

Run gpedit.msc

User Configuration --> Administrative Templates --> Windows Explorer

Look for Remove CD Burning Features and double click on it

Choose enabled and apply

I suggest using a third party program such as Nero or Adaptecs EZ CD Creator.

Networking

This is where I am putting all of the LAN and modem related tweaks.

Share browsing speedup

Why does browsing shared folders on some computers take so much longer than it does on some other machines? Something as simple as having any Scheduled tasks on the computer you're trying to browse can add up to 30 seconds of waiting! Fortunately, it’s fairly easy to disable this process. You'll have to open up regedit. The key that you will want to change is in the HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/Current Version/Explorer/RemoteComputer/NameSpace directory. Browse through the contents and find a key called {D6277990-4C6A-11CF-8D87-00AA0060F5BF}. Delete this nasty little key. As with all registry changes it will require a reboot for the changes to take affect.

Slow boot on network

Sometimes when connected to a LAN the boot time can take a few minutes. Load times shouldn't be anywhere near that! Signs of this include the system seemingly freezes after logging in, your desktop showing up but for some reason you just can't click on anything or run things for a minute or two. This can be traced back to mrxsmb.dll by using bootvis.exe. This can of course be a number of other things but most of the time it's your file and printer sharing.

1. Right click on Network Places --> Properties
2. Right click on your Ethernet Adapter connection --> properties
3. Un-check "File and Printer Sharing for Microsoft Networks" --> OK
4. reboot
5. If you need file or printer sharing, repeat the above, re-check the box and re-boot again.

Simply uninstalling and reinstalling your file and printer sharing will fix this up. Another case of funky MS syndrome. AKA keep BigCheeze Employed bug.

Increase BROADBAND speed in WinXP *Should work for 56k also*

1. make sure your logged on as actually "Administrator". do not log on with any account that just has administrator privileges.
2. start - run - type gpedit.msc (not available in home version)
3. expand the "local computer policy" branch
4. expand the "administrative templates" branch
5. expand the "network branch"
6. Highlight the "QoS Packet Scheduler" in left window
7. in right window double click the "limit reservable bandwidth" setting
8. on setting tab check the "enabled" item
9.where it says "Bandwidth limit %" change it to read 0

Effect is immediate on some systems, some need to re-boot. This is more of a "counter what XP does" thing. In other words, XP seems to want to reserve 20% of the bandwidth for its self, even with QoS disabled. So why not use it to your advantage. To demonstrate the problem with this on stand alone machines start up a big download from a server with an FTP client. Try to find a server that doesn't max out your bandwidth. In this case you want a slow to medium speed server to demonstrate this. Let it run for a couple of minutes to get stable. The start up another download from the same server with another instance of your FTP client. You will notice that the available bandwidth is now being fought over and one of the clients download will be very slow or both will slow down when they should both be using the available bandwidth. Using this "tweak" both clients will have a fair share of the bandwidth and will not fight over the bandwidth.

OR you could just uninstall it ;)

Increase your cable modem or DSL speed in XP

This tweak is for broad band cable connections on stand alone machines with winXP professional version - might work on Home version also. It will probably work with networked machines as well but I haven't tried it in that configuration. This is for windows XP only, it does not work on win2000. I use 3 Com cards so I don't know how it works on others at this point. It does not involve editing the registry. This tweak assumes that you have let winXP create a connection on install for your cable modem/NIC combination and that your connection has tcp/ip - QoS - file and print sharing - and client for microsoft networks , only, installed. It also assumes that winxp will detect your NIC and has in-box drivers for it. If it doesn't do not try this. In the "My Network Places" properties (right click on the desktop icon and choose properties), highlight the connection then at the menu bar choose "Advanced" then "Advanced Settings". Uncheck the two boxes in the lower half for the bindings for File and Printer sharing and Client for MS networks. Click OK

1. From the windows XP cd in the support directory from the support cab, extract the file netcap.exe and place it in a directory on your hard drive or even in the root of your C:\ drive.
2. next, open up a command prompt window and change directories to where you put netcap.exe. then type "netcap/?". It will list some commands that are available for netcap and a netmon driver will be installed. At the bottom you will see your adapters. You should see two of them if using a 3Com card. One will be for LAN and the other will be for WAN something or other.
3. Next type "netcap/Remove". This will remove the netmon driver.
4. Open up control panel / system / dev man and look at your network adapters. You should now see two of them and one will have a yellow ! on it. Right click on the one without the yellow ! and choose uninstall. YES! you are uninstalling your network adapter, continue with the uninstall. Do not restart yet.
5. Check your connection properties to make sure that no connection exists. If you get a wizard just cancel out of it.
6. Now re-start the machine.
7. After re-start go to your connection properties again and you should have a new connection called "Local area connection 2". highlight the connection then at the menu bar choose "Advanced" then "Advanced Settings". Uncheck the two boxes in the lower half for the bindings for File and Printer sharing and Client for MS networks. Click OK.
8. Choose connection properties and uncheck the "QOS" box
9. Re-start the machine
10. after restart enjoy the increased responsiveness of IE, faster page loading, and a connection speed boost.

Oddball stuff

Visual effects in system panel

A noticeable performance boost can be found when you turn off alot of the eye candy in Win XP

Right click my computer, hit properties
advanced --> Performance --> settings
Adjust for best performance

Start menu speedup

To make your start menu show things quite a bit faster you will want to browse HKEY_CURRENT_USER/Control Panel/Desktop./ and edit the MenuShowDelay key. Changing that to a lower number will result in faster performance.

L2 Cache size

Windows XP can't detect the proper amount of L2 cache on your CPU. you'll want to go to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Managementand change the SecondLevelDataCache key to the L2 cache size of your CPU (in Kb). I've received a few questions about this one and I thought I'd clarify it. when you select to modify this file the default entry is in hexadecimal simply change the selection to decimal and THEN enter your number. Such as 256, 512. A value of 100 in Hexadecimal will result in 256Kb being shown since that is what it's decimal number is.

Some have argued that this is only for the old systems that have their cache externally. I'm looking for more information on this right now.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
"SecondLevelDataCache"="100"

Thanks for reading!

That's everything that I know about tweaking Windows XP for better performance. Sure there's alot more tweaks out there that don't truly affect performance. Please give all feedback in Please remember that this is in fact done at your own risk! Please don't even do one of these tweaks without backing your data up properly.


Bookmark and Share
posted by u2r2h at Saturday, April 14, 2007 0 comments

cheap and nasty Wifi Antenna design

Jeff Duntemann has a really nice how-to on building a Wi-Fi waveguide antenna from a "Tetra Brik" type container (the kind of foil-lined packaging that Swanson Chicken Broth and Kitchen Basics Beef Stock comes in). I like the first part of this intro:

A lot more has been said than written about the legendary Pringle's Can Wi-Fi antenna, and a lot more people have talked glowingly about them without ever actually using one. Look closely, and you'll see that you have to add various things to it to make it work even so-so. Unless you have a can with a foil lining (not all Pringle's cans that I've seen do) and unless you can make good electrical contact to that foil lining (not a slam-dunk, trust me!) the can won't act as a waveguide antenna and thus won't throw your signal very far or bring in anything from a distance... Don't obsess on the Pringle's solution. There's an easier kitchen-trash antenna to be had: The Tetra Brik Soup Box.

http://www.streettech.com/storypics/brikAntenna.jpg
C'mon, you know you've thought about it -- no, not what you'd do if Natalie Portman actually answered your fanboy emails -- building a Wi-Fi antenna from one of those in-pot steamer/strainers (a Hollywood favorite when depicting junk-built robots and various McGuyver hacks). A builder on Instructables has done just that, creating a signal booster for a thumb-drive-type USB Wi-Fi Adaptor. Making such a uni-directional booster is actually very easy, and at least according to the builder, significantly boosts signal strength.


[Image] [Image]


http://www.usbwifi.orcon.net.nz/babywifi.jpg

http://www.usbwifi.orcon.net.nz/brmwifi.jpg

http://www.usbwifi.orcon.net.nz/canflower.jpg
Bookmark and Share
posted by u2r2h at Saturday, April 14, 2007 0 comments