NVMe stands for Non-Volatile Memory Express, a next generation controller interface specification designed for non-volatile memory such as Solid State Drives (SSD) using the PCIe bus.
Prior to the advent of NVMe, computer storage was primarily connected over the SATA bus which utilized the Advanced Host Controller Interface, or AHCI. AHCI was originally developed for HDDs back in the early 2000’s and while it performed well for HDDs, it was not well suited for SSDs which operate very differently when compared to HDDs.
- Parallel Operations – One of the biggest benefits of NVMe is that it allows up to 65,535 I/O queues per storage device and up to 64,000 commands to be issued to each I/O queue. This is significantly more I/O queues than compared to previous interface specifications which allows just a single queue with up to 32 commands per queue. When dealing with SSDs, which can process data much faster than HDDs, this allows the SSD to parallelize operations to greatly improve performance.
- Reduced Latency – NVMe also significantly reduces latency by optimizing the command issue and completion path for non-volatile memory based drives. On average, this provides over 50% latency reduction when compared to older interface specifications.