NVMe

NVMe – Non-Volatile Memory Express. NVMe is the protocol used to connect direct-attached storage, typically SSDs, to a host server’s PCIe bus. This is much faster, at say 120-150µs, than using a drive access protocol such as SATA or SAS. Each SATA or SAS controller can have one queue and a queue depth of 32 for SATA and 254 for SAS. An NVMe controller supports 64,000 queues, each with a depth of 64,000 entries. Such a controller can handle many more IO requests than SATA and SAS controllers without degrading performance.

NVMe bandwidth is around 1Gbps per PCIe gen 3 lane and lanes can be grouped so that a 16-lane setup delivers 16Gbps. PCIe gen 4 doubles this and PCIe gen 5 doubles it again. In summary, NVMe handles more IO requests and deals with them quicker than SATA or SAS.