Why 3D XPoint SSDs Will Be Slow
Let me back up a little – they’re not really slow. When Intel compared its standard NAND flash based PCIe SSD to a similar SSD based on 3D XPoint memory, the XPoint model ran 7-8 times faster, which is very impressive. Intel demonstrated that at the Intel Developer Forum (IDF) last August and several times since then.
But Intel and Micron have been boasting since its introduction that 3D XPoint Memory is 1,000 times as fast as NAND flash. How do you get from a 1,000 times speed advantage down to a speed improvement of only 7-8 times?
That’s what the graphic in this post will explain. The small rendition above is just a portion of the larger chart shown below. I’ll explain what this graph tells us, and then will show how that 1,000 times speed advantage shrinks to only 7-8 times in an SSD.
The Storage Networking Industry Association (SNIA) uses this graph to illustrate the sources of latencies (delays) between an SSD and the software that requested the SSD’s data. I have removed a number of other bars that represent HDDs and SATA SSDs, leaving in only the two that represent the Intel NAND SSD and a similar SSD based on “Future NVM”, a broad base of possibilities, one of which would be 3D XPoint Memory.
The X-axis tells us how long it takes to perform a typical data read for both of these SSDs: about 90 microseconds for the NAND-based SSD and about 20 microseconds for the NVM SSD.
Each bar is broken into six components:
- NVM Tread, which probably should have been written tREAD. This is the “read” time of the NAND flash or NVM: How long does it take, from the time that an address is applied to the chip, for valid data to appear at the output of the NAND flash or NVM chip?
- NVM xfer: The time required to transfer (“xfer”) the data from the NAND flash or NVM to the SSD’s I/O pins.
- Misc SSD: This is to account for delays that stem from internal SSD housekeeping like address translation or the average time lost to garbage collection.
- Link Xfer: The time needed to transfer the data across the PCIe interface.
- Platform + adapter: Delays from the host computer’s PCIe port to the arrival of the data at the processor pins.
- Software: The amount of time the operating system’s I/O stack requires to perform a disk read operation
The first three components are significantly smaller for the NVM-based SSD than they are for the NAND-based SSD. The last three components don’t change at all. Those last three components are the source of the problem.
Those last three components, link transfer (xfer), platform and adapter, and software, account for about 15 microseconds of delay. If you were to use a magical memory that had zero delays, then its bar would never get any smaller than 15 microseconds.
In comparison, the upper bar, the one representing the NAND-based SSD, has combined latencies of about 90 microseconds, or six times as long.
These charts are imprecise, and that imprecision probably accounts for the difference between a 6-times speed improvement and the actual XPoint SSD’s speed of 7-8 times that of its NAND-based counterpart.
Since so much of 3D XPoint’s speed advantage is lost to these delays The SSD Guy expects for the PCIe interface to contribute very little to long-term 3D XPoint Memory revenues. Intel plans to offer another implementation, shipping 3D XPoint Memory on DDR4 DIMMs. A DIMM version will have much smaller delays of this sort, allowing 3D XPoint memory to provide a much more significant speed advantage. Over the product’s lifetime DIMMs should make up the majority of 3D XPoint Memory’s revenues.
My company, Objective Analysis, has written a report explaining 3D XPoint Memory and its market potential. Anyone interested in understanding the market for this product is welcome to click the following link to learn more: A Close Look at the Micron/Intel 3D XPoint Memory