Since its introduction, Flash has grown to become the mainstream choice for storage thanks to its reliability, performance, ease of use and improved data center economics. But flash has not yet reached its full potential. It has been constrained by the limitations of the old underlying protocols (SATA, SCSI SAS and ATA) that are used to transfer date. These decades-old legacy protocols were designed with spinning disks in mind and were never intended for Flash! Consequently, they bring a number of inherent disadvantages – that is, complexity, multiple interface layers and a lack of parallelism. Using these protocols for Flash can be compared to driving a Ferrari on country roads – as there’s a great deal of potential that cannot be effectively utilized.
But there is a way of extracting the maximum value out of a Flash investment, thanks to Non-Volatile Memory Express (NVMe), a promising, new, optimized, high-performance interface that was designed from the ground-up for solid state disks (not hard drives!). First introduced as a specification in 2011, NVMe interface protocol has been refined over the years. The NVMe Express, Inc, a consortium of more than 65 leading technology companies, has been instrumental in promoting awareness and making NVMe an industry-wide standard. NVMe is designed to be faster and far more optimized for performance and latency than its predecessors, SAS and SATA.
It uses the PCI Express (PCIe) bus as the interface, hence the term “express“. PCIe has some advantages, including lower latencies, scalable performance/bandwidth, better I/ O performance, and low power consumption, thanks to its direct connection to the CPU. Currently, PCIe 3.0 can support up to 16 lanes, with each lane supporting1Gb/s of throughput per lane. Besides the noticeable performance improvement, this enables NVMe to support massive concurrence of parallel requests. For example: NVMe can support up to 64,000 queues and 64,000 commands per queue, while SATA and SAS can queue only 32 and 256 commands in a single queue respectively. In other words, NVMe supports massive parallelism, which is driving a great deal of excitement around the technology.
NVMe’s extreme performance and peak bandwidth will make it the protocol of choice for today’s latency-sensitive applications. The defining characteristic of NVMe is the massive parallel access to NAND memory (more threads, more queues, more tasks), which makes NVMe storage performance almost comparable to that of Direct Attached Storage (DAS). Small wonder then that in the real world, NVMe SSDs can be used in all scenarios where SAS SSDs are currently being used. As vendors begin to offer exciting new NVMe based storage systems, early adopters will include companies that rely on high transaction databases such as trading firms, web application hosting companies, digitally native enterprises, real-time analytics, machine and deep learning and High Performance Computing.
As the storage world collectively continues to adopt new standards and make these technologies available in mainstream products, it becomes imperative to evaluate them. Adopting any new technology standard can seem a daunting task, but true technology innovations like NVMe make the effort worthwhile.
NVMe offers exciting opportunities to harness the true power of Flash and Fujitsu will introduce NVMe in its storage portfolio. Fujitsu’s future storage system based on the NVMe protocol and PCIe bus technology will enable customers to manage massive parallel data access, without the need to increase the number of their storage systems. You can learn more about our approach in our new NVMe Paper: Unleashing the Flash Beast – The Power of NVMe, which you can read here.
The holy grail of Storage is to have Storage behave like Memory which is not only incredibly fast and efficient but also has minimal latency. NVMe brings us very close indeed to achieving this.