NVMe

NVM Express (NVMe) devices are Article description::flash memory chips connected to a system via the PCI-E bus. They are among the fastest memory chips available on the market, faster than Solid State Drives (SSD) connected over the SATA bus.

Kernel
NVM Express block device ( CONFIG_BLK_DEV_NVME ) must be activated to gain NVMe device support:

Devices will show up under.

Configuration
Partition tables and formatting can be performed the same as any other block device. User space tools are available from.

Identifying the device
There are minor differences in the naming scheme for devices and partitions when compared to SATA devices.

NVMe partitions generally show a p before the partition number. NVMe devices also include namespace support, using a n before listing the namespace. Therefore the first device in the first namespace with one partition will be at the following location:. The device name is nvme0, in namespace 1, and partition 1.

I/O testing
Hdparm can be used to get the raw read/write speed of a NVMe device. Passing the  option instructs  to perform  timings  of device reads,   performs  timings  of  cache reads, and   bypasses the page cache and causes reads to go directly from the drive into 's buffers in raw mode:

Performance and maintenance
Since NVMe devices share the flash memory technology basis with common SSDs, the same performance and longevity considerations apply. For details consult the SSD article.

External resources

 * https://medium.com/@metebalci/a-quick-tour-of-nvm-express-nvme-3da2246ce4ef - An excellent article describing the differences in recent disk drive technology, but focusing on NVMe.
 * https://wiki.archlinux.org/index.php/NVMe