I installed XP to my Aspire One one week ago. I followed up all the tips in the "Steps to a happy XP experience", but still my XP was freezing a lot whenever the SSD was accessed. The tips improved the situation nicely, but only because they were actually lowering the SSD usage, not because they were fixing the actual problem.
Fortunately I had a similar problem on my work high end Dell workstation RAID controller (it was freezing also frequently), so I suspected the issue was caused by lack of proper disk write cache or over conservative write cache locking (the RAID was configured to be very conservative). Without a write cache, whenever a process writes to the drive, all queued reads must be first executed and then the whole disk is locked until the write finishes. This causes the thread writing the data to stall and all other threads that read the disk while the write operation is waiting or executing to also stall. This explains why the application freezes for a short time period whenever the disk is written to.
When I first installed Windows XP, I used a optimized tiny XP image without ACPI Multiprocessor PC support (it was optimized for Eee PC), and only one logical CPU core was usable (hyperthreading CPUs have 2 logical cores). Because of this the SSD freezing problem was much more visible, as the whole system froze instead of just the active application. After that I installed XP again from my original SP2 CD. With HT properly enabled (2 logical cores), only one of the cores freeze (wait for the write lock) and the another one is still available (unless it's also accessing the SSD). This makes the system feel a lot more smoother.
XP doesn't write that much data to the SSD, but it does a lot of small writes. If the writes would be properly cached for a long enough time period (large enough cache), the built in SSD write speed would be enough for completely smooth performance on normal XP use. The driver could flush the cache on background to the SSD without stalling the system at all (cache thread is only active on very short times between the cache flushes and the thread is inactive during the IO operations and consumes no CPU resources).
I was thinking about writing a cache driver to the hard drive, but then I realized that someone must have done that before, as many high end data servers are frequently using techniques like that (using very large system memory caches for the disk access).
The best I could find was SuperCache by SuperSpeed corporation. They are mostly doing server solutions for big corporations, and are Microsoft gold certified partners and IBM server proven partners among others. SuperCache is mainly designed for read caching for databases, but it has also (optional) write caching feature, called "deferred-write mode". In deferred write mode all the write requests are cached and written by "lazy-write mechanism" during a longer time period (preventing any lockups).
I installed SuperCache III to my Aspire One, configured it to use 512 MB of memory as disk cache and enabled the write cache (deferred write mode). I have 1 GB of extra memory installed (total 1.5 GB), so 1 GB was left to the Windows XP. Now the system feels much more smoother and most of the freezes are completely gone. The software was very easy to install and configure, and doesn't need any extra steps, such as partitioning your hard drive or changing your settings whenever you want to install new sotfware. You can use the computer like normal, and the SuperCache is completely invisible. The only negative thing you notice is that the shut down time is slightly longer, as the SuperCache needs to dump unwritten part of the 512 MB cache to the disk on shut down. And if you want to buy a license, it's 130$. With around the same money you can also buy a CF->ZIF adapter + 8GB 300x/350x CF card or a 18" 100/120 GB ZIF hard drive. Installing a hard drive or CF to the computer is not any harder as the memory upgrade, and you really need to have the memory upgrade for SuperCache as well. But it's still a good thing to try, and worked well for me.
SuperCache web site: http://www.superspeed.com/desktop/supercache.php
Anyone of you have found different (or more suitable) software for HD/SSD write cache? SuperCache III seems to be focused for read caching, and it seems that the AOne SSD has no problem is disk reading. What I would really like to have is a simple write cache (just queue write commands, and if a overlapping read command is made combine the write memory buffer data to the data read from disk). This way the write cache would not even have to be that large, and could even be used on the 512 MB models.
Fortunately I had a similar problem on my work high end Dell workstation RAID controller (it was freezing also frequently), so I suspected the issue was caused by lack of proper disk write cache or over conservative write cache locking (the RAID was configured to be very conservative). Without a write cache, whenever a process writes to the drive, all queued reads must be first executed and then the whole disk is locked until the write finishes. This causes the thread writing the data to stall and all other threads that read the disk while the write operation is waiting or executing to also stall. This explains why the application freezes for a short time period whenever the disk is written to.
When I first installed Windows XP, I used a optimized tiny XP image without ACPI Multiprocessor PC support (it was optimized for Eee PC), and only one logical CPU core was usable (hyperthreading CPUs have 2 logical cores). Because of this the SSD freezing problem was much more visible, as the whole system froze instead of just the active application. After that I installed XP again from my original SP2 CD. With HT properly enabled (2 logical cores), only one of the cores freeze (wait for the write lock) and the another one is still available (unless it's also accessing the SSD). This makes the system feel a lot more smoother.
XP doesn't write that much data to the SSD, but it does a lot of small writes. If the writes would be properly cached for a long enough time period (large enough cache), the built in SSD write speed would be enough for completely smooth performance on normal XP use. The driver could flush the cache on background to the SSD without stalling the system at all (cache thread is only active on very short times between the cache flushes and the thread is inactive during the IO operations and consumes no CPU resources).
I was thinking about writing a cache driver to the hard drive, but then I realized that someone must have done that before, as many high end data servers are frequently using techniques like that (using very large system memory caches for the disk access).
The best I could find was SuperCache by SuperSpeed corporation. They are mostly doing server solutions for big corporations, and are Microsoft gold certified partners and IBM server proven partners among others. SuperCache is mainly designed for read caching for databases, but it has also (optional) write caching feature, called "deferred-write mode". In deferred write mode all the write requests are cached and written by "lazy-write mechanism" during a longer time period (preventing any lockups).
I installed SuperCache III to my Aspire One, configured it to use 512 MB of memory as disk cache and enabled the write cache (deferred write mode). I have 1 GB of extra memory installed (total 1.5 GB), so 1 GB was left to the Windows XP. Now the system feels much more smoother and most of the freezes are completely gone. The software was very easy to install and configure, and doesn't need any extra steps, such as partitioning your hard drive or changing your settings whenever you want to install new sotfware. You can use the computer like normal, and the SuperCache is completely invisible. The only negative thing you notice is that the shut down time is slightly longer, as the SuperCache needs to dump unwritten part of the 512 MB cache to the disk on shut down. And if you want to buy a license, it's 130$. With around the same money you can also buy a CF->ZIF adapter + 8GB 300x/350x CF card or a 18" 100/120 GB ZIF hard drive. Installing a hard drive or CF to the computer is not any harder as the memory upgrade, and you really need to have the memory upgrade for SuperCache as well. But it's still a good thing to try, and worked well for me.
SuperCache web site: http://www.superspeed.com/desktop/supercache.php
Anyone of you have found different (or more suitable) software for HD/SSD write cache? SuperCache III seems to be focused for read caching, and it seems that the AOne SSD has no problem is disk reading. What I would really like to have is a simple write cache (just queue write commands, and if a overlapping read command is made combine the write memory buffer data to the data read from disk). This way the write cache would not even have to be that large, and could even be used on the 512 MB models.