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.

  Corsair Force LS 240GB Corsair Neutron 240GB Samsung SSD 840 EVO 250GB Kingston SSDNow V300 240GB Samsung SSD 840 Pro 256GB
Default
25% OP -

Performance consistency with the Force LS is okay for a budget drive. It's clearly nowhere near the Neutron but compared to Samsung SSD 840 EVO and Pro, it's not bad (though keep in mind that the Force LS has more over-provisioning by default). What's a bit of a letdown is the fact that increasing the over-provisioning doesn't really improve IO consistency. The time it takes to enter steady-state is longer but the actual steady-state performance is essentially unchanged.

  Corsair Force LS 240GB Corsair Neutron 240GB Samsung SSD 840 EVO 250GB Kingston SSDNow V300 240GB Samsung SSD 840 Pro 256GB
Default
25% OP -


  Corsair Force LS 240GB Corsair Neutron 240GB Samsung SSD 840 EVO 250GB Kingston SSDNow V300 240GB Samsung SSD 840 Pro 256GB
Default
25% OP -

TRIM Validation

Our performance consistency tests take a deeper dive into the worst-case performance than our old TRIM/garbage collection tests did but the HD Tach method is still handy for checking TRIM functionality. Like before, I filled the drive with sequential data and then tortured with 4KB random writes (QD=32, 100% LBA) for 30 minutes:

Worst-case performance is pretty low as we saw in the IO consistency tests. However, Phison's garbage collection is rather aggressive as during a single HD Tach pass the performance increases from ~30MB/s to a peak of 350MB/s.

A single TRIM pass recovers performance back to the original ~360MB/s.

Introduction, The Drive & The Test AnandTech Storage Bench 2013
Comments Locked

25 Comments

View All Comments

  • Kristian Vättö - Thursday, September 26, 2013 - link

    "Yellow on white is usually hard to see though."

    The color used in this review is orange, does it look yellow-ish in your browser?

    "Also, you'd need one more color as there are 8 drives tested."

    Are you suggesting that we should use a different color for each drive? I think that just adds confusion because the drive in review would no longer be differentiated from the others. Or did you mean something else?
  • erple2 - Thursday, September 26, 2013 - link

    Rgb plus CMYK is 7 colors. I think that the poster implied that if you used those colors, you'd still need to come up with an eighth color, as you show the performance vs transfer graphs for 8 drives. The other graphs IMO are fine.
  • Urizane - Friday, September 27, 2013 - link

    Off of the top of my head? Try:
    #E02040
    #E08820
    #E0D040
    #70D040
    #60C0B0
    #6090E0
    #9070FF
    #D060C0

    There are 8 colors. They should be just high contrast enough with a white background. You can even throw in a grey and a black line if you need it.
  • Phasenoise - Wednesday, September 25, 2013 - link

    I would appreciate a second line in the benchmark graphs which explain the controller used by that particular drive at a glance.
  • Hrel - Wednesday, September 25, 2013 - link

    The final paragraph of this article sums up my exact thoughts on this whole topic. Not sure what these businesses are thinking; in terms of what market is there. Perhaps they're just throwing resources at these things, creating and marketing them and hoping they net a profit. On the other hand they probably CAN do that given the margins on NAND memory.

    Wish they'd aggressively price cut to create an actual budget segment for SSD's. $150 gets me a Plextor or Sandisk on amazon with 256GB of storage space and upper level performance. Means you have to get your 256gb drive down to $100 to sell it to me. Good luck.

Log in

Don't have an account? Sign up now