Performance Consistency

We've been looking at performance consistency since the Intel SSD DC S3700 review in late 2012 and it has become one of the cornerstones of our SSD reviews. Back in the days many SSD vendors were only focusing on high peak performance, which unfortunately came at the cost of sustained performance. In other words, the drives would push high IOPS in certain synthetic scenarios to provide nice marketing numbers, but as soon as you pushed the drive for more than a few minutes you could easily run into hiccups caused by poor performance consistency.

Once we started exploring IO consistency, nearly all SSD manufacturers made a move to improve consistency and for the 2015 suite, I haven't made any significant changes to the methodology we use to test IO consistency. The biggest change is the move from VDBench to Iometer 1.1.0 as the benchmarking software and I've also extended the test from 2000 seconds to a full hour to ensure that all drives hit steady-state during the test.

For better readability, I now provide bar graphs with the first one being an average IOPS of the last 400 seconds and the second graph displaying the standard deviation during the same period. Average IOPS provides a quick look into overall performance, but it can easily hide bad consistency, so looking at standard deviation is necessary for a complete look into consistency.

I'm still providing the same scatter graphs too, of course. However, I decided to dump the logarithmic graphs and go linear-only since logarithmic graphs aren't as accurate and can be hard to interpret for those who aren't familiar with them. I provide two graphs: one that includes the whole duration of the test and another that focuses on the last 400 seconds of the test to get a better scope into steady-state performance.

Steady-State 4KB Random Write Performance

Steady-state performance isn't mind blowing, although it's a little unfair to compare the 256GB SM951-NVMe against a 512GB SM951-AHCI because available NAND throughput can play a major role in steady-state performance with a properly designed controller and firmware.

Steady-State 4KB Random Write Consistency

The mediocre steady-state performance is replaced by outstanding consistency, though. During the last 400 seconds, the SM951-NVMe has standard deviation of only 1.12, whereas the next drives are in the order of hundreds with many drives surpassing 1,000.

Samsung SM951 NVMe

As there's practically no variation in performance, the graph is just a straight line after the initial cliff. There are zero up and down swings, which is something I've yet to see even in an enterprise SSD. Samsung has always done well in IO consistency, but in all honesty the SM951-NVMe sets a new bar for consistency. On the downside, I would rather take some variation with higher performance because especially for client workloads such level of consistency isn't really needed, but increased performance can always help with intensive IO workloads. Nevertheless, I'm very happy with the direction Samsung is taking because we still see some controller vendors not paying enough attention to consistency, but it's clearly a high priority for Samsung.

Unfortunately I couldn't run any tests with added over-provisioning because the hdparm commands I use for limiting the capacity do not work with NVMe drives. There are similar commands for NVMe drives too, but for now there is no publicly available utility for issuing those commands.

Samsung SM951 NVMe
Thermal Throttling Revisited AnandTech Storage Bench - The Destroyer
Comments Locked


View All Comments

  • bigbrainz - Wednesday, September 16, 2015 - link

    So which would be best for video editing (not rendering--the editing/preview stage)? The 750 or the SM951 (AHCI since the NVMe isn't really available yet)? Generally that would mean playing back one video stream, although with compositing it can briefly get to 2 at a time. Rarely more than that though (for my videos). I'm not really sure if that would be considered random or sequential or light or heavy or what?

  • metaxis - Wednesday, October 28, 2015 - link

    It's really unfortunate how much these performance line graphs squander the benchmark data you've gathered.

    * One device at time prevents visual comparisons.

    * One graph from a series at a time means a ton of toggling back an forth, or opening a lot of windows

    * ...but, because the scale isn't fixed, you *still* can't visually compare them.

    The graphs are pretty terrible over at /bench too.

    * no horizontal scale labels
    * product/comparison mixes "less is better" and "more is better" with abandon
    * you have to hunt around a ton to actually get anything useful
    * choose *either* 2 devices and all the shared benchmarks *or* all devices that happen to have been tested under a single benchmark
    * links to product reviews mostly gone

    These are some of the weakest visualizations of this valuable set of data I can imagine, and it makes me sad.
  • dtscaps - Friday, March 11, 2016 - link

    Ok, this is supposed to be a review to guide me what SSD to buy. I read 10 pages of performance specs and 72 more comments dealing with microseconds marginality. The fact that this drive does or does not have an AES self encrypting mechanism adering to OPAL 2 with a possible IEEE1667 extension IS IMPORTANT. IT IS A COMPLETE SHOW STOPPER if the drive cannot encrypt data. Maybe except if you are a kid playing with new toys.

    So, is this SSD self encrypting ?
    Does it support Opal 2
    Does it support the IEEE1667 extension?
  • Chris023 - Monday, April 25, 2016 - link

    Just a little FYI for anyone that runs across this article. I just purchased the Samsung 950 pro boxed consumer version in 512GB. I Installed it with an adapter card in an old Asus M4a88TD-V EVO/USB3 motherboard. To my amazement the bios recognized and even put it in the boot sequence. I already had an 830 SSD. I booted up with the old SSD 830 and initialized this new 950. Then using Samsung's transfer software cloned the 830 to the 950. Rebooted, turned the 830 to disabled in the boot order, and enabled the 950 as the boot drive. It took two tries for me to realize I had to disable the 830 in the boot menu as the bios automatically looked for a bootable AHCI drive first. I have now been booting and running the 950 Pro for over a week with no issues. This is on an old AMD 880 chipset!!! This is a PCIe 2.0 MB! Even so it still manages to outperform the older Samsung 830 SSD enough to notice. User Bench shows my SSD performance going from 70% to 169% of average. Average will shoot up much higher once I get a true PCIe MB with native NVMe drive support.

Log in

Don't have an account? Sign up now