Mixed Read/Write Performance

Workloads consisting of a mix of reads and writes can be particularly challenging for flash based SSDs. When a write operation interrupts a string of reads, it will block access to at least one flash chip for a period of time that is substantially longer than a read operation takes. This hurts the latency of any read operations that were waiting on that chip, and with enough write operations throughput can be severely impacted. If the write command triggers an erase operation on one or more flash chips, the traffic jam is many times worse.

The occasional read interrupting a string of write commands doesn't necessarily cause much of a backlog, because writes are usually buffered by the controller anyways. But depending on how much unwritten data the controller is willing to buffer and for how long, a burst of reads could force the drive to begin flushing outstanding writes before they've all been coalesced into optimal sized writes.

The effect of a read still applies to the Optane SSD's 3D XPoint memory, but with greatly reduced severity. Whether a block of reads coming in has an effect depends on how the Optane SSD's controller manages the 3D XPoint memory.

Queue Depth 4

Our first mixed workload test is an extension of what Intel describes in their specifications for throughput of mixed workloads. A total queue depth of 16 is achieved using four worker threads, each performing a mix of random reads and random writes. Instead of just testing a 70% read mixture, the full range from pure reads to pure writes is tested at 10% increments.

Mixed Random Read/Write Throughput
Vertical Axis units: IOPS MB/s

The Optane SSD's throughput does indeed show the bathtub curve shape that is common for this sort of mixed workload test, but the sides are quite shallow and the minimum (at 40% reads/60% writes) is still 83% of the peak throughput (which occurs with the all-reads workload). While the Optane SSD is operating near 2GB/s the flash SSDs spend most of the test only slightly above 500MB/s. When the portion of writes increases to 70%, the two flash SSDs begin to diverge: the Intel P3700 loses almost half its throughput and only recovers a little of it during the remainder of the test, while the Micron 9100 begins to accelerate and comes much closer to the Optane SSD's level of performance.

Random Read Latency
Mean Median 99th Percentile 99.999th Percentile

The median latency curves for the two flash SSDs show a substantial drop when the median operation switches from a read to a cacheable write. The P3700's median latency even briefly drops below that of the Optane SSD, but then the Optane SSD is handling several times the throughput. The 99th and 99.999th percentile latencies for the Optane SSD are relatively flat after jumping a bit when writes are first introduced to the mix. The flash SSDs have far higher 99th and 99.999th percentile latencies through the middle of the test, but much fewer outliers during the pure read and pure write phases.

Adding Writes to a Drive that is Reading

The next mixed workload test takes a different approach and is loosely based on the Aerospike Certification Tool. The read workload is constant throughout the test: a single thread performing 4kB random reads at QD1. Threads performing 4kB random writes at QD1 and throttled to 100MB/s are added to the mix until the drive's throughput is saturated. As the write workload gets heavier, the random read throughput will drop and the read latency will increase.

The three SSDs have very different capacity for random write throughput: the Intel P3700 tops out around 400MB/s, the Micron 9100 can sustain 1GB/s, and the Intel Optane SSD DC P4800X can sustain almost 2GB/s. The Optane SSD's average read latency increases by a factor of 5, but that still enough to provide about 25k read IOPS. The flash SSDs both experience read latency growing by an order of magnitude as write throughput approaches saturation. Even though the Intel P3700 has a much lower capacity for random writes, it provides slightly lower random read latency at its saturation point than the Micron 9100. When comparing the two flash SSDs with the same write load, the Micron 9100 provides far more random read throughput.

Sequential Access Performance Final Words: Is 3D XPoint Ready?
Comments Locked

117 Comments

View All Comments

  • melgross - Tuesday, April 25, 2017 - link

    You obviously have some ax to grind. You do seem bitter about something.

    The first SSDs weren't much better than many HHD's in random R/W. Give it a break!
  • XabanakFanatik - Thursday, April 20, 2017 - link

    I know that this drive isn't targeted for consumers at all, but I'm really interested in how it performs in consumer level workloads as an example of what a full Optane SSD is capable of. Any chance we can get a part 2 with the consumer drive tests and have it compared to the fastest consumer NVM-e drives? Even just a partial test suite for a sampler of how it compares would be great.
  • Drumsticks - Thursday, April 20, 2017 - link

    I imagine it will be insane - the drive saturates its throughput at <QD6, meaning most consumer workloads. It'll obviously be a while before its affordable from a consumer perspective, but I suspect the consumer prices will be a lot lower without the enterprise class requirements thrown in.

    This drive looks incredibly good. 2-4x more than enterprise SSDs for pretty similar sequential throughput - BUT at insanely lower queue depths, which is a big benefit. At those QDs, it's easily justifying its price in throughput. Throw on top of that a 99.999th% latency that is often better than their 99th% latency, and 3D Xpoint has a very bright future ahead of it. It might be gen 1 tech, but it's already justified its existence for an entire class of workloads.
  • superkev72 - Thursday, April 20, 2017 - link

    Those are some very impressive numbers for a gen1 storage device. Basically better than an SSD in almost every way except of course price. I'm interested in seeing what Micron does with QuantX as it should have the same characteristics but potentially more accessible.
  • DrunkenDonkey - Thursday, April 20, 2017 - link

    Well finally! I was waiting for this test ever since I heard about the technology. This is enterprise drive, yeah, but it is the showcase for the technology and it shows what we can expect for consumer drive - 8-10x current SSD speeds for desktop usage (that is 98% 4-8k RR, QD=1). That blows out of the water everything in the market. Actually this technology shines exactly at radon joe's PC, while SSDs shine only in enterprise market (QD=16+). Can't wait!
  • Meteor2 - Thursday, April 20, 2017 - link

    But don't we say SATA3 is good enough and we don't really need (for consumer use) NVMe? So what's the real benefit of something faster?
  • DrunkenDonkey - Thursday, April 20, 2017 - link

    All you want (from desktop user perspective) is low latency at low queue depth (1). NVME helps with that regard, tho not by a lot. Equal drives, one on sata, one on nvme will make the nvme a bit more agile resulting in more performance for you. So far no current ssd is ever close to saturate the sata3 bus in desktop use, this one, however, is scratching it. Sure, it will be years till we get affordable consumer drives from that tech, but it is pretty much the same step forward than going from hdd to ssd - first ssds were in the range of 20ish mb per second, while hdds - about 1.5 in these circumstances. Here we are talking a jump from 50 to close to 400+. Moar power! :)
  • serendip - Thursday, April 20, 2017 - link

    Imagine having long battery life and instant hibernation - at 400 mbps, waking up from hibernation and reloading memory contents would take a few seconds. Then again, constantly writing a huge page file to XPoint wouldn't be good for longevity and hibernation doesn't allow for background processes to run while asleep. I'm thinking of potential usage for XPoint on phones and tablets, can't seem to find any.
  • ddriver - Friday, April 21, 2017 - link

    Yeah, also imagine your system working 10 times slower, because it uses hypetane instead of ram.
    And not only that, but you also have to replace that memory every 6 months or so, because working memory is much more write intensive, and this thing's endurance is barely twice that of MLC flash.

    It is well worth the benefit of instant resume, because if enterprise systems are known for something, that is frequently hibernating and resuming.
  • tuxRoller - Friday, April 21, 2017 - link

    They didn't say replace the ram with xpoint.
    It's a really good idea since xpoint has faster media access times so even when it's a smaller amount it should still be quite a bit faster than nand.

Log in

Don't have an account? Sign up now