Testing TRIM

SSDs by default have no knowledge of what locations in NAND contain valid or invalid data. All writes are committed to NAND and it's not until an LBA is overwritten that the controller gets rid of the data previously at that address. Well designed controllers thrive with as much free space as possible, but without knowing what NAND blocks contain valid data the amount of free space on a drive from the controller's perspective diminishes over time. This results in the oh-so-familiar performance degradation over time that plagues all SSDs. The ATA TRIM command was introduced to help alleviate this issue. In a supported OS with TRIM enabled drivers, whenever data is deleted a command is sent to the SSD to TRIM the LBAs that map to the now invalid data. Upon receiving this command, modern SSDs mark those NAND blocks as invalid and schedule them for recycling. In the end this helps performance remain high over time.

Note that TRIM doesn't solve all fragmentation - you need a good controller with well architected firmware to ensure that fragmentation doesn't become an out of control problem. To understand how the m4's TRIM implementation performs let's first look at its fresh, out-of-box sequential write speed:

Note the relatively consistent write performance averaging 250MB/s. Now let's put the drive in a horribly fragmented state by first writing to all user addressable LBAs sequentially then performing a 4KB random write test at a queue depth of 32 across the entire drive for 20 minutes. This is what a sequential pass looks like after our little torture session:

Note the remarkable falloff in performance. Most of this is due to just how fast the m4 can write 4KB of data randomly across the drive, but it also shows that Crucial manages to reach such high 4KB random write speeds by not adequately combating fragmentation on the fly. Thankfully the drive does seem to recover pretty well, here's what it looks like after a second sequential pass:

Finally if we format the entire drive we get to see how well the m4 responds to the ATA TRIM command. To avoid giving the m4 an easier time I secure erased the drive, re-ran our torture test without the second pass (above) and then TRIMed its contents to produce the graph below:

Performance is back to new. What does all of this tell us? If you're running an OS with TRIM support you'll likely be just fine with the m4. Pseudo-random writes are common within any desktop workload, but if you avoid filling your drive to capacity and have a TRIM supported OS the drive shouldn't get into a bad state. The bigger concern is running the m4 in an OS without official TRIM support (e.g. Mac OS X) where you could find yourself in a particularly bad situation over a long period of time. Even then, it's obvious that sequential write passes over used LBAs cleans the drive up fairly well. Chances are that a standard desktop workload in a TRIM-free OS would be fine over the long run. If not, some sequential writes to any free space would do the trick (e.g. copying a large video file then deleting it).

AnandTech Storage Bench 2011 - Light Workload Final Words
Comments Locked

45 Comments

View All Comments

  • nandreetta - Wednesday, August 31, 2011 - link

    I'm tempted to pick this up while Newegg has it on sale, but I've been trying to convince myself to buy an Intel SSD instead for a while now due to what everyone says about reliability. With a 2007 Santa Rosa MBP, I'll be limited by the slow SATA interface anyway, so reliability trumps speed. It's just hard to justify spending $300 or more on an upgrade rather than saving the money for a new machine when I'm this far outside of AppleCare.

    Any thoughts, Internet?
  • FunBunny2 - Wednesday, August 31, 2011 - link

    What's most interesting is that we may have another good controller. Marvell has been making them for a while, but not as a preferred vendor for some. A rock solid controller that's not SF or Intel is a good thing.
  • daidaloss - Thursday, September 1, 2011 - link

    +1
  • fhaddad78 - Wednesday, August 31, 2011 - link

    I'm still rockin my 160GB Intel X25-M SSD. It's hard to imagine the new drivers are faster than what I have now. It's the only drive in my computer and my box boots up lightning fast and apps open in an instant.
  • Coup27 - Thursday, September 1, 2011 - link

    fhaddad78 I concur. I am going to be building a small ITX system next month for a friend and I couldn't decide on either 64GB M4, 470 or slightly more expensive 80GB 320. Reading reviews on the 470 and the M4 question their ability to maintain their speed over the months of use.

    I've had an X25-M 80GB in my current setup for 8 months now running the Optimizer once a week. I decided to do something I've never done to my SSD, which is to benchmark it. After 8 months of use the values were exactly what Anand's graphs showed for my SSD when it was doing the rounds on the reviews.

    Think my decsion has been made. Deffinately worth a little extra for the quality of the product.
  • daidaloss - Thursday, September 1, 2011 - link

    My G2 80GB been running for a year and a half with practically the same performance as the moment I've bought it.
    Intel definitely nailed with the G2 series.
    G2 are definitely worth all the money.
  • danwat12345 - Sunday, November 13, 2011 - link

    Yea me to. G2 80GB, still keeps up with the new stuff with random reads on SATA 2!
  • iRoNeTiK - Friday, September 2, 2011 - link

    I got the same test results when I updated my m4 128GB my firmware to 0009 as well, thumbs up!
  • METALMORPHASIS - Tuesday, September 6, 2011 - link

    And still not ready for prime time.
  • lin41411 - Monday, September 12, 2011 - link

    256GB M4 is about $430...1GB $1.67
    128GB M4 is about $200...1GB $1.56
    64GB M4 is about $110...1GB $1.71
    the price in China...
    so,as a Chinese,I really can not understand why we are low income, but the price is high
    T T

Log in

Don't have an account? Sign up now