The SSD Improv: Intel & Indilinx get TRIM, Kingston Brings Intel Down to $115by Anand Lal Shimpi on November 17, 2009 7:00 PM EST
- Posted in
Wipe When You Can’t TRIM
There’s a major problem with TRIM today. The only Windows storage drivers to support it are written by Microsoft. The Intel Matrix Storage Manager (IMSM) driver will not pass the TRIM instruction to your SSD. This means you can't use anything but the drivers that ship with Windows 7. To make matters worse, if you enable non-member RAID on an Intel motherboard the default Windows 7 driver is an older version of IMSM so TRIM won't work there either - even if you don't have a RAID array created. Your best bet is to install Windows 7 with your I/O controller in AHCI mode (for Intel chipsets) and don't install any storage drivers. Intel is working on an updated IMSM that will pass the TRIM instruction to SSDs but it won't be ready for at least a couple of months.
TRIM won't work on a RAID array.
If you want to use IMSM or if you're using Windows XP or Vista, both of which do not support TRIM, there's another option. Earlier this year Indilinx released its Wiper Tool that performs a manual TRIM on their SSDs. It works by asking the OS for a list of the free space addresses on the partition and then sending the list with instructions to TRIM down to the SSD.
The Indilinx Wiper Tool
Today Intel introduces its own manual TRIM tool as a part of the SSD Toolbox:
On any Windows OS (XP, Vista or 7) regardless of what driver you have installed, Intel's SSD Toolbox will allow you to manually TRIM your drive. Intel calls it the SSD Optimizer, which of course only works on 34nm Intel SSDs (X25-M G1 owners are out of luck unfortunately).
The Intel SSD Optimizer lets you schedule the manual TRIM operation automatically
The SSD Toolbox also gives you access to SMART and drive health data, including telling you how many writes you've performed on your SSD, and what your current flash wear level is:
Running Intel's SSD Optimizer does work as advertised. I ran the PCMark HDD suite on a clean X25-M, once more on a drive that had been well used and once more after running the SSD Optimizer:
|PCMark Vantage HDD Score||Clean Run||Used Run||After SSD Optimizer|
|Intel X25-M G2 160GB||35909||30354||34014|
Intel's SSD Optimizer should be able to restore performance to about 95%+ of new, in this case it manages 94.7% - close enough.
Moving On: Forget About Invalid Data and Worry About Free Space
The existence of TRIM changes the way we test, something I alluded to in the SSD Relapse. Thankfully, we come prepared.
In previous articles we had to test SSDs in two conditions: new and used. The new state is just after a secure erase, the used state required us to write data to every user accessible portion of the drive first before benchmarking. The former resulted in great performance, the latter meant the SSD had to do a lot of juggling of existing data whenever it went to write. The second scenario no longer exists with TRIM. The act of formatting your drive or deleting files (and emptying the recycle bin) will TRIM invalid data.
Performance in a TRIM enabled system is now determined not by the number of invalid blocks on your SSD, but rather the amount of free space you have. I went into a deep explanation of the relationship between free space and the performance of some SSDs here.
TRIM will make sure that you don’t have to worry about your drive filling up with invalid data, but it doesn’t skirt the bigger issue: dynamic controllers see their performance improve with more free space.
My rule of thumb is to keep at least 20% free space on your drive, you can get by with less but performance tends to suffer. It doesn’t degrade by the same amount for all drives either. Some controllers are more opportunistic with free space (e.g. Intel), while others don’t seem to rely as much on free space for improved performance. Addressing performance degradation as drives fill up (with valid data) will be one of the next major advancements in SSD technology.