Skip to main content

What is NVM Express?

NVM Express

NVM Express (NVMe) is also known as Non-Volatile Memory Host Controller Interface Specification (NVMHCIS).

It allows host hardware to communicate with non-volatile memory.

It is an open device interface that is used to access a computer’s non-volatile storage media which is typically attached via the PCI Express bus. 

Non-volatile memory is usually flash memory that can come in a few forms including SSDs (solid-state drives), PCIe (PCI Express) add-in cards, and M.2 cards. 

This logical device interface was created to leverage low latency and internal parallelism of SSDs (solid-state storage devices).

The NVMe is stored in a chip that is co-located with the storage media.

The NVMe assists the SSD to reach maximum parallelism within modern SSDs which allows you to reduce i/O overhead and optimizes performance. It makes SSDs much more scalable than legacy interfaces.

The NVMe architecture delivers a new high performance queuing mechanism. Queues are mapped to CPU cores delivering scalable performance. The NVMe interface significantly reduces the number of memory-mapped input/output commands.

The NVMe specification even contains host-to-device protocol for SSD commands through an operating system for: read, write, flush, TRIM, firmware management, temperature, errors and others.