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.

  OCZ Vector 150 240GB OCZ Vector 256GB Corsair Neutron 240GB Sandisk Extreme II 480GB Samsung SSD 840 Pro 256GB
Default
25% OP

Performance consistency is simply outstanding. OCZ told us that they focused heavily on IO consistency in the Vector 150 and the results speak for themselves. Obviously the added over-provisioning helps but if you compare it to the Corsair Neutron with the same ~12% over-provisioning, the Vector 150 wins. The Neutron and other LAMD based SSDs have been one of the most consistent SSDs to date, so the Vector 150 beating the Neutron is certainly an honorable milestone for OCZ. However if you increase the over-provisioning to 25%, the Vector 150's advantage doesn't scale. In fact, the original Vector is slightly more consistent with 25% over-provisioning than the Vector 150 but both are definitely among the most consistent.

  OCZ Vector 150 240GB OCZ Vector 256GB Corsair Neutron 240GB SanDisk Extreme II 480GB Samsung SSD 840 Pro 256GB
Default
25% OP

 

  OCZ Vector 150 240GB OCZ Vector 256GB Corsair Neutron 240GB SanDisk Extreme II 480GB Samsung SSD 840 Pro 256GB
Default
25% OP

 

TRIM Validation

Above is an HD Tach graph I ran on a secure erased drive to get the baseline performance. The graph below is from a run that I ran after our performance consistency test (first filled with sequential data and then hammered with 4KB random writes at queue depth of 32 for 2000 seconds):

And as always, performance degrades, although the Vector 150 does pretty good with recovering the performance if you write sequential data to the drive. Finally I TRIM'ed the entire volume and reran HD Tach to make sure TRIM is functional.

It is. You can also see the impact of OCZ's "performance mode" in the graphs. Once 50% of the LBAs have been filled, the drive will reorganize the data, which causes the performance degradation. If you leave the drive idling after filling over half of it, the performance will return close to brand new state within minutes. Our internal tests with the original Vector have shown that the data reorganization takes less than 10 minutes, so it's nothing to be concerned about. The HD Tach graphs give a much worse picture of the situation than it really is.

Introduction & The Drive AnandTech Storage Bench 2013
Comments Locked

59 Comments

View All Comments

  • DarkKnight_Y2K - Friday, November 8, 2013 - link

    I have 2 60GB Vertex 2 in RAID-0 that I bought in 2009, that I still boot to as of today with no problems.
  • profquatermass - Friday, November 8, 2013 - link

    Me 2!
    A Vertex 3. I think most people don't bother ensuring they've got current Firmware in them when buying from a shop.
    Shops (brick or online) are notorious for keeping old stock on their shelves.

    Also make sure it is partition aligned correctly.
  • Pantsu - Friday, November 8, 2013 - link

    I've been using a 128 GB Vertex 3 since they launched it back in 2011. It had the blue screen issue but that got fixed after a firmware update. It's been working great ever since. Too bad for OCZ, looks like they're beyond hope at this point. Based on the comments their reputation has been soiled, and they'd need a miracle to keep going.
  • derzerb - Thursday, November 7, 2013 - link

    I've been using ocz products in several builds psu/ssds and never had any issues. The current affordable prices for ssds is partially attributable to ocz's aggressive pricing in the past.
  • mayankleoboy1 - Thursday, November 7, 2013 - link

    isnt the metric "4k random read at QD=1/2
    the only relefant metric for 80% of a typical desktop workload ?
    In that metric, Samsung 840Pro still rules.
  • JellyRoll - Friday, November 8, 2013 - link

    Exactly correct. QD 1-3 are all that matter....not Destroyer benchmarks with insane workloads.
  • Gigaplex - Friday, November 8, 2013 - link

    I'm confused as to why the 4K random reads are so slow. Much slower than writing. Anyone care to explain?
  • Kristian Vättö - Friday, November 8, 2013 - link

    Random writes can take advantage of write combining (i.e. small IOs are combined to make look like one big IO), which in turn will allow higher level of parallelism as the operation can be spread to a number of die.

    With random reads that is not possible because when the host sends a read IO request, the controller can't wait to combine it with more reads because that would add unnecessary latency (which means whatever you're doing will slow down because the OS is waiting for your SSD). Low queue depth random reads cannot take much advantage of parallelism because at QD=3, the controller can only read from three dies simultaneously (decrease QD to 1 and it can only read from one die).
  • piroroadkill - Friday, November 8, 2013 - link

    Not bad in a review, but the review sample did die.

    While better alternatives exist, most people would avoid the OCZ brand like the plague, and that's the sad fact of the matter for OCZ.

    I too can throw my anecdote into the ring with a Vertex 2 that gave random trouble. I RMA'd it, and the replacement sees only light duty in a seldom used laptop.
  • BlakKW - Friday, November 8, 2013 - link

    I have 2 ssd's, both would be considered the cheaper "consumer" quality, and usage would be considered very light. Would spending extra on an enterprise level ssd with higher warranty get me a drive that lasts a good bit longer?

Log in

Don't have an account? Sign up now