Performance Consistency

In our Intel SSD DC S3700 review Anand introduced a new method of characterizing performance: looking at the latency of individual operations over time. The S3700 promised a level of performance consistency that was unmatched in the industry, and as a result needed some additional testing to show that. The reason we don't have consistent IO latency with SSDs is because inevitably all controllers have to do some amount of defragmentation or garbage collection in order to continue operating at high speeds. When and how an SSD decides to run its defrag and cleanup routines directly impacts the user experience. Frequent (borderline aggressive) cleanup generally results in more stable performance, while delaying that can result in higher peak performance at the expense of much lower worst-case performance. The graphs below tell us a lot about the architecture of these SSDs and how they handle internal defragmentation.

To generate the data below we take a freshly secure erased SSD and fill it with sequential data. This ensures that all user accessible LBAs have data associated with them. Next we kick off a 4KB random write workload across all LBAs at a queue depth of 32 using incompressible data. We run the test for just over half an hour, nowhere near what we run our steady state tests for but enough to give a good look at drive behavior once all spare area fills up.

We record instantaneous IOPS every second for the duration of the test and then plot IOPS vs. time and generate the scatter plots below. Each set of graphs features the same scale. The first two sets use a log scale for easy comparison, while the last set of graphs uses a linear scale that tops out at 40K IOPS for better visualization of differences between drives.

The high level testing methodology remains unchanged from our S3700 review. Unlike in previous reviews however, we vary the percentage of the drive that gets filled/tested depending on the amount of spare area we're trying to simulate. The buttons are labeled with the advertised user capacity had the SSD vendor decided to use that specific amount of spare area. If you want to replicate this on your own all you need to do is create a partition smaller than the total capacity of the drive and leave the remaining space unused to simulate a larger amount of spare area. The partitioning step isn't absolutely necessary in every case but it's an easy way to make sure you never exceed your allocated spare area. It's a good idea to do this from the start (e.g. secure erase, partition, then install Windows), but if you are working backwards you can always create the spare area partition, format it to TRIM it, then delete the partition. Finally, this method of creating spare area works on the drives we've tested here but not all controllers are guaranteed to behave the same way.

The first set of graphs shows the performance data over the entire 2000 second test period. In these charts you'll notice an early period of very high performance followed by a sharp dropoff. What you're seeing in that case is the drive allocating new blocks from its spare area, then eventually using up all free blocks and having to perform a read-modify-write for all subsequent writes (write amplification goes up, performance goes down).

The second set of graphs zooms in to the beginning of steady state operation for the drive (t=1400s). The third set also looks at the beginning of steady state operation but on a linear performance scale. Click the buttons below each graph to switch source data.

  Mushkin Atlas 240GB Mushkin Atlas 480GB Intel SSD 525 Plextor M5M Samsung SSD 840 EVO 250GB
Default
25% OP - -

Quite surprisingly, the 240GB model has great IO consistency but the performance is significantly lower at 480GB. We've not tested any 480GB SandForce SSDs for years, so I'm not sure if this is typical behavior or unique to the 480GB Atlas. Performance can slow down when more NAND dies are added because there are more pages/blocks to track, which requires more processing power and cache to deal with. The SF-2281 silicon is over two years old, so I think it wasn't really optimized for capacities over 256GB even though the controller is capable of supporting up to 512GB with 64Gb/die NAND. The 480GB model is still okay, though, as even at steady-state the IOPS is around 5000, while for example the Plextor M5M has occasions where the IOPS drops to zero.

  Mushkin Atlas 240GB Mushkin Atlas 480GB Intel SSD 525 Plextor M5M Samsung SSD 840 EVO 250GB
Default
25% OP - -

 

  Mushkin Atlas 240GB Mushkin Atlas 480GB Intel SSD 525 Plextor M5M Samsung SSD 840 EVO 250GB
Default
25% OP - -

 

TRIM Validation

To test TRIM, I first filled all user-accessible LBAs with sequential data and continued with torturing the drive with 4KB random writes (100% LBA, QD=32) for 60 minutes. After torturing the drive, I measured the sequential write performance with Iometer (128KB IO size, fully random, 100% LBA, QD=1, 60 seconds). Next I TRIM'ed the drive (quick format in Windows 7/8) and reran Iometer.

Mushkin Atlas Resiliency - Iometer Incompressible Sequential Write
  Clean Dirty After TRIM
Mushkin Atlas 240GB 189.2MB/s 35.2MB/s 106.6MB/s

As expected, performance doesn't fully recover. I've heard SandForce actually has a fix for this but it's still in validation and will be implemented once its given a green light.

Introduction, The Drive & The Test AnandTech Storage Bench 2013
POST A COMMENT

27 Comments

View All Comments

  • henrybravo - Monday, December 16, 2013 - link

    Perhaps you should go back and read the 2 paragraphs in the power consumption section. They used an mSATA adapter with a voltage regulator, which caused the power consumption numbers to be artificially high. Kristian speculates the true power draw of the drive is actually comparable to the Intel SSD 525. Reply
  • whyso - Tuesday, December 17, 2013 - link

    "Hence the numbers for mSATA drives are not accurate because the voltage regulator consumes some of the power." I was assuming they are using the same adapter for all the drives (which they say plural). Reply
  • Kristian Vättö - Tuesday, December 17, 2013 - link

    The same adapter was used with Plextor M5M and MyDigitalSSD's SSDs. I'm currently trying to set it up so that the voltage/current going straight to the drive could be measured. Will update if I get it working... Reply
  • phantom505 - Monday, December 30, 2013 - link

    Pretty poor reading comprehension. The voltage regulator eats 40-50% of that value. Seems relatively speaking on par. Reply
  • kraki - Monday, December 16, 2013 - link

    As a long time Mushkin customer who has 3 of the Chronos Deluxe 240s in his desktop even I had to go with the M5Ms as well in my new laptop. I disagree on the "Performance isn't important" comment though. Silent, fast and light were my reasons for getting 2 Plextor M5Ms in my new system. Reply
  • tomtetummetott - Tuesday, December 17, 2013 - link

    just curious: is there any reason to buy this over a Crucial M500 mSATA? Reply
  • Kristian Vättö - Tuesday, December 17, 2013 - link

    We haven't tested the M500 mSATA yet (I've asked for samples and they should be here after CES) but my wild guess would be no. Reply
  • asgallant - Tuesday, December 17, 2013 - link

    Is it possible that the performance deficit for the 480GB is due to using LGA60 for the packaging instead of LBGA100? A priori, one might expect to see bandwidth per package to correlate with pin count, ergo lower performance from lower pin count. Reply
  • Kristian Vättö - Tuesday, December 17, 2013 - link

    That's a good point. Some OEMs have changed the package type for better performance, you're probably right that the package type is at least partially reason to the lower performance. However, I think the main reason is still the increased page/block count since the 480GB Vertex 3 showed similar behaviour. Reply
  • Menetlaus - Tuesday, December 17, 2013 - link

    Screw mSATA... where are the retail NGFF/M.2 SSD's and their reviews?

    I've got a Lenovo Y410p with a useless 32gb 4280 (I think) M.2 cache SSD... I'd love to drop in a 120/250GB SSD and use it for the OS drive, but there are few (if any) M.2's readivly available in Canada (amazon.COM had two, but no ship to Canada).

    Can you tell I'm more than a little ticked at Lenovo as they assured me prior to purchase it had a mSATA SSD, but I suppose this is another case of may the buyer beware.
    Reply

Log in

Don't have an account? Sign up now