A slight hitch?
As we put the 950 Pro through our standard storage test suite, we noticed a few surprising results. It seems our test unit is performing less well than one might expect in certain IOMeter workloads compared to Samsung's claimed performance specifications, especially those heavy on random writes. We aren’t sure of the exact reason for the numbers we saw, but there are a number of potential culprits—thermal throttling, a bug in Samsung’s beta NVMe driver, or perhaps an issue with our Windows 8.1 test image. We also can't rule out the possibility that the drive is simply performing as expected.
We’ve brought our random-write results to Samsung's attention, and we'll update the review when we hear back. In the meantime, we're forging ahead, since our other results for the drive appear to be OK. Without further ado, let's move on to the benchmarks.
IOMeter — Sequential and random performance
IOMeter fuels much of our latest storage test suite, including our sequential and random I/O tests. These tests are run across the full capacity of the drive at two queue depths. The QD1 tests simulate a single thread, while the QD4 results emulate a more demanding desktop workload. For perspective, 87% of the requests in our old DriveBench 2.0 trace of real-world desktop activity have a queue depth of four or less. Clicking the buttons below the graphs switches between results charted at the different queue depths.
Our sequential tests use a relatively large 128KB block size.
The 950 Pro posts healthy sequential numbers. Its read speeds at both QD1 and QD4 are right up there with the greats, trailing just a little behind Intel's excellent 750 Series drive (the only other consumer NVMe drive in this dataset). Samsung's SM951, an ACHI-based drive, still leads the pack at QD1, however, and it bests the 950 Pro at QD4. The 950 Pro's write numbers are good, too. This drive ends up comfortably ahead of the SATA pack, but it's not quite as strong as Intel's NVMe offerings.
Next, we'll turn our attention to performance with 4KB random I/O. The tests below are based on the median of three consecutive three-minute runs. SSDs typically deliver consistent sequential and random read performance over that period, but random write speeds worsen as the drive's overprovisioned area is consumed by incoming writes. We've reported average response times rather than raw throughput, which we think makes sense in the context of system responsiveness.
The 950 Pro pulls ahead head of the pack with random-read response times at both queue depths, beating out even Intel's datacenter NVMe drive, the P3700. On the other hand, its random-write response times are lackluster, losing to a number of cheaper, older SATA drives. This is an example of where we believe the drive is stumbling for some reason, but like we said, these could be expected results. The SM951 doesn't do any better here.
As we noted, the preceding tests are based on the median of three consecutive three-minute runs. SSDs typically deliver consistent sequential and random-read performance over that period, but random-write speeds worsen as the drive's overprovisioned area is consumed by incoming writes. We explore that decline in the next set of tests.
Sustained and scaling I/O rates
Our sustained IOMeter test hammers drives with 4KB random writes for 30 minutes straight. It uses a queue depth of 32, which should result in higher speeds that saturate each drive's overprovisioned area more quickly. This lengthy—and heavy—workload isn't indicative of typical PC use, but it provides a sense of how the drives react when they're pushed to the brink.
We're reporting IOps rather than response times for these tests. Click the buttons below the graph to switch between SSDs.
Not exactly a revolutionary showing here. This test is another example of our seemingly odd write results. The drive's peak and steady-state rates are about on par with most of the SATA drives we tested.
To show the data in a slightly different light, we've graphed the peak random-write rate and the average, steady-state speed over the last minute of the test.
As we said, the 950 Pro falls close to the middle of the SATA pack. That's a bit frustrating, given how well it performs in our read synthetics.
Our final IOMeter test examines performance scaling across a broad range of queue depths. We ramp all the way up to a queue depth of 128. Don't expect AHCI-based drives to scale past 32, though; that's the max depth of their native command queues.
We use a database access pattern comprising 66% reads and 33% writes, all of which are random. The test runs after 30 minutes of continuous random writes that put the drives in a simulated used state. Click the buttons below the graph to switch between the different drives. And note that the P3700 plot uses a much larger scale. We'll compare several of the PCIe drives on that scale in a moment.
The 950 Pro's performance flattens out around a queue depth of eight. It certainly scales better than the AHCI SM951 before it, but Intel's 750 Series drives have no trouble scaling even further still. Puzzlingly, the performance issue extends to random reads as well as writes this time around. In general, we would expect NVMe drives to scale well beyond a queue depth of just eight.
Below, we use the same data to plot the 950 Pro against the two Intel powerhouses, as well as Samsung's SM951. Click to toggle between read, write, and total IOps.
These graphs really put a point on the 950 Pro's scaling performance. It flatlines not all that far above the AHCI SM951. Meanwhile, Intel's NVMe drives rocket skyward as the queue depth increases, scaling all the way to a queue depth of 128.