Results: Tom's Hardware Storage Bench v1.0, Continued
Beyond the average data rate reported on the previous page, there's even more information we can collect from Tom's Hardware's Storage Bench. For instance, mean (average) service times show what responsiveness is like on an average I/O during the trace.
It would be difficult to graph the 10+ million I/Os that make up our test, so looking at the average time to service an I/O makes more sense. For a more nuanced idea of what's transpiring during the trace, we plot mean service times for reads against writes. That way, drives with better latency show up closer to the origin; lower numbers are better.
Write latency is simply the total time it takes an input or output operation to be issued by the host operating system, travel to the storage subsystem, commit to the storage device, and have the drive acknowledge the operation. Read latency is similar. The operating system asks the storage device for data stored in a certain location, the SSD reads that information, and then it's sent to the host. Modern computers are fast and SSDs are zippy, but there's still a significant amount of latency involved in a storage transaction.
Like my waist, this chart could probably stand to lose a couple of inches. But Plextor's results necessitate expanding the scale (at least in Windows 7). I'm giving you results from both Windows 7 and 8.1 because the M6e ends up in the rough under Windows 8.1, further out to the right than any other SSD. That's the opposite of where it'd want to be.
Under Windows 7, in green text, everything changes. Instead of demonstrating the worst read time, it yields the best. And write service time shows up just behind SanDisk's A110. We're working with Plextor to narrow down a more concrete explanation. Interestingly enough, average data rate doesn't change, so the figure on the previous page is correct for both operating systems.
After crunching the numbers, the real difference boils down to service time quality. The standard deviation with read/write service times is far lower (and more consistent) under Windows 7. Since we’re displaying mean service time (Tx), outliers add up, and there are more painfully-long operations due to Windows 8.
Think of latency like a golf score; lower is better. On this course, 296 µs is not good. Previously, the 120 GB Crucial M500 turned in the worst averages. But Plextor's M6e in Windows 8 relieves it. Switch to Windows 7, though, and everything is beautiful.
It turns out that this is a problem, and not that Plextor is responsible for. You'll see a lot more AHCI-conforming PCIe-based storage in the future, and it's looking like the issue is Microsoft's AHCI driver under Windows 8. All of our SATA-based drives are benchmarked under Intel's Rapid Storage Technology driver. But we have to use the built-in AHCI software for this type of native storage sitting on the PCI Express bus. MSAHCI.SYS was around forever, and is indeed what you use in Windows 7. That driver appears to behave itself. But it was recently superseded by STORAHCI.SYS in the latest version of Windows, and its performance isn't as predictable, manifested by requests serviced less consistently.
And before you start thinking this issue is limited to AHCI-based native PCIe storage, SATA-attached drives like Crucial's M550 get the same harsh treatment under STORAHCI. Its just that you're stuck with the operating system's generic AHCI driver when you use a device like the M6e.
The A110 is deadly with its 427 µs result, likely due to its emulated-SLC cache. Our trace seems to be ideally suited to SanDisk's nCache technology, providing small idle times the cache uses to flush information to the conventional MLC-configured storage. Plextor’s M6e slides in just behind, impressing with its performance as well. That's a spectacular result if you're in Windows 7. Making the move to Windows 8.1 pushes the M6e back another 200 µs worse on average.