Performance Tuning of Windows XP on SSD-based Netbooks
A number of registry and filesystem tweaks can be applied to Windows XP running on SSD-based computers in order to make it run faster and consume less memory. This article explains in detail how to optimize Windows XP for running from SSD. How to speed up the slow computers, boost Windows XP performance, and make your computer run faster.
1. Intended audience of this article
This article is for people who use SSD-based netbooks with Windows XP.
Users choose SSD-based netbooks because are light-weight (~ 1 kg), energy efficient,
cheap and robust to shock and vibration.
Our tool
FlashBoot has made easy
to install of Windows XP from USB.
If you use Windows XP on netbook, first of all you should
install and enable EWF.
This article goes further and explains post-EWF-installation steps required to speed up
SSD-based netbook with Windows XP.
Recommendations from this article are indepenent from EWF. You may apply them before installing
EWF, after installing EWF, or apply them without installing EWF at all.
2. Goal: Less writes on SSD. Motivation
We intend to minimize writes on SSD-backed disk C:. But why?
Due to an effect known as write amplification, when small 512-byte sector is written to SSD,
entire eraseblock (typically 32x larger) gets erased and rewritten. This is a cause of slowliness
of Windows XP with default settings.
Also, SSDs have low limit on erase-and-rewrite cycle count per block, typically 10000, which is much
lower than HDDs. This is why SSD lifetime is reduced on Windows XP with default settings.
So, our primary goal is to minimize number of writes on SSD.
3. Optimization guide
Install Windows XP on FAT32 filesystem, not NTFS.
FAT32 has much simpler metadata format compared to NTFS, so Windows makes less
disk write requests.
Disable swap file
Swapping reduces SSD lifetime greatly. Also it does not make sense if EWF is
installed for disk C: — swapped out data is still kept in RAM by EWF filter driver.
My Computer -> Properties ->
Advanced -> Performance ->
Settings -> Advanced ->
Virtual Memory -> Change.
C: -> No paging file ->
Set (repeat for all disks with swap files).
Then click OK.
If you absolutely must have swap file enabled on SSD-based netbook, install
SD card to SD slot, make
it appear as fixed disk and relocate swap file there (disable it for all other disks).
Lifetime of this SD card is expected to be under 2 years of normal use and under 1 year
of intensive use.
Increase the Disk Cache Size
When you read a file from the HDD or SSD, Windows will store a copy of this file
in the RAM. When this file will be asked again, Windows will read it from RAM.
This way disk access time will be greatly reduced.
Cache also works for writing. The new data is not instantly saved to disk,
it's hold in RAM for some time. The benefit of this appoarch is an
additional performance on files repeatedly rewritten in place.
We will increase the size of the RAM-based disk cache to improve disk performance.
- Run regedit (Start, Run ..., type regedit).
- Go to the following key: HKEY_LOCAL_MACHINE
\ SYSTEM
\ CurrentControlSet
\ Control
\ Session Manager
\ Memory Management
- Create or edit the DWORD value by assigning LargeSystemCache
value 1 (0 is the default).
- Exit regedit and reboot the netbook.
Disable System Restore
Theoretically, System Restore feature is to make sure that software installations,
drivers, and other updates can be rolled back.
In practice, it never works that way and just wasting disk space and I/O.
My Computer ->
Properties ->
System Restore
Select "Turn off System Restore" checkbox and click Apply.
Confirm turnoff in dialog.
Disable Updating of File Last Access Time
Each time you read any file, Windows updates its attributes (last access time
in particular). Such updates generate a lot of useless disk I/O. To disable this feature:
- Run command line (Start, Run ..., type cmd).
- Type fsutil behavior set disablelastaccess 1 and press Enter.
Disable Windows Prefetch
Windows Prefetch is indended to speed up loading of applications.
It remembers which DLLs and data files each application tend to read each time on startup
and makes them sequental on disk in its Windows Prefetcher Cache.
So on HDDs they load faster. On SSD with fast random seek time there's no speed difference
between reading files from Windows Prefetcher Cache and from actual location. On SSD-based
netbooks, Windows Prefetcher Cache is just waste of disk space and SSD lifetime.
To disable Windows Prefetch:
- Run regedit (Start, Run ..., type regedit).
- Go to the following key: HKEY_LOCAL_MACHINE
\ SYSTEM
\ CurrentControlSet
\ Control
\ Session Manager
\ Memory Management
\ PrefetchParameters
- Create or edit the DWORD value by assigning EnablePrefetcher
value 0 (1 is the default).
- Exit regedit and reboot the netbook.
- Delete C:\Windows\Prefetch folder.
Disable disk defragmentation and background moving of frequently accessed files
to the start of disk
Because random read time on SSD is the same as linear read time, defragmentation is
unnecessary for SSD. Because read speed at the start of SSD does not differ from
read speed at then end of SSD, moving frequently used files to the start of disk
in unnecessary for SSD.
Both should be disabled to avoid unnecessary I/O and to extend SSD lifetime.
To do this:
- Run regedit (Start, Run ..., type regedit).
- Go to the following key: HKEY_LOCAL_MACHINE
\ SOFTWARE
\ Microsoft
\ Dfrg
\ BootOptimizeFunction
- Create or edit the STRING value by assigning Enable
value "N" ("Y" is the default).
- Go to the following key: HKEY_LOCAL_MACHINE
\ SOFTWARE
\ Microsoft
\ Windows
\ CurrentVersion
\ OptimalLayout
- Create or edit the DWORD value by assigning EnableAutoLayout
value 0 (1 is the default).
- Exit regedit and reboot the netbook.
|