Site icon DED9

What is NVMe? Advantages and Disadvantages of NVMe

Nvme

What is NVMe?

NVMe (non-volatile memory express) is a host controller interface and storage protocol created to accelerate the transfer speed of data. Between enterprise and client systems and solid-state drives over a computer’s high-speed Peripheral Component Interconnect Express bus.

So NVMexpress is commonly use for solid-state storage, main memory, cache memory or backup memory. It provides an alternative to the Small Computer System Interface (SCSI) standard and the Advanced Technology Attachment (ATA) . Standard for connecting and transmitting data between a host system and a target storage device. NVMe  designed for use with faster media. Also The main advantages of NVMe-based PCIe SSDs over other storage types are the reduced latency and higher input/output operations per second (IOPS).

As solid-state technology became the preferred medium in the storage market. It quickly became clear that existing interfaces and protocols — such as Serial Advanced Technology Attachment (SATA) and Serial-Attached SCSI (SAS) — were no longer suitable in data center environments. In early 2011, the initial NVMe spec released. Nearly 100 tech companies  involved in its development.

NVMexpress is also a key enabler of evolving technologies and applications such as the internet of things, artificial intelligence and machine learning, which can all benefit from the low latency and high-performance improvements provided by NVMe-attached storage.

How does NVMexpress work?

The NVMexpress standard does not state NVMe’s main use; however, it does define a register interface, command set and collection of features for PCIe-based SSDs with the goals of high performance and interoperability across a broad range of NVM systems.

The NVMexpress protocol can support any form of non-volatile memory. Such as SSDs that use different types of non-volatile memory, including NAND flash. NVMe reference drivers are available for a variety of operating systems, including Windows and Linux.

In addition An NVMe SSD connects through a PCIe bus or M.2 and U.2 connectors. The NVMexpress protocol, attached with these connections, enables lower latency and higher IOPS along with a reduction in power use.

NVMe commands map input/output (I/O) and responses to shared memory in a host computer over a PCIe interface. The NVMexpress interface supports parallel I/O with multicore processors to facilitate high throughput and address central processing unit (CPU) bottlenecks.

Why is NVMe important?

Designed for high-performance non-volatile storage media such as SSDs, NVMe is well-suited for highly demanding, compute-intensive settings. For example, NVMe can handle enterprise workloads while leaving a smaller infrastructure footprint and consuming less power.

By comparison, there is a large performance difference between NVMexpress and SATA. For example, NVMexpress experiences much less latency than SAS and SATA protocols. This increase in performance and reduced latency means that NVMe can be used with workload-intensive applications that need real-time processing while avoiding bottlenecks.

Enterprise environments and data centers can take advantage of the high-performance granted by NVMexpress-based storage.

What are NVMe’s use cases?

Because of the blistering performance for flash storage NVMexpress provides, along with its ability to handle a high number of queues and commands, NVMexpress is suitable for:

What are the benefits of NVMe?

Benefits of NVMexpress include:

What are the ِDisadvantages of NVMe?

Potential drawbacks include:

History and evolution of NVM Express

The Non-Volatile Memory Host Controller Interface (NVMHCI) Workgroup began developing the NVMe specification in 2009 and published the 1.0 version on March 1, 2011. This specification included the queuing interface, the NVM command set.

Administration command set and security features. Other noteworthy dates include:

NVMe form factors and standards

The need for a storage interface and protocol to better exploit NAND flash’s performance potential in enterprise environments was the driving force behind the development of NVMe. But reimagining the connection standard opened the doors to several different types of interface implementations that could stay within the bounds of the new spec while offering a variety of implementation options.

In short order, a number of flash form factors conforming to NVMe specifications emerged, including the new form factors for SSDs dubbed M.2 and U.2.

NVMe over Fabrics

NVM Express Inc. published version 1.0 of the NVMexpress over Fabrics (NVMe-oF) specification on June 5, 2016. NVMe-oF is designed to extend the high-performance and low-latency benefits of NVMe across network fabrics.That connect servers and storage systems. The NVMe-oF 1.1 specification, which was released in 2019. Offers improved fabric communication, finer grain I/O resource management, and end-to-end flow control and support for NVMe/TCP. Both specifications also offer lower latency, improved management and provisioning of flash and remote storage access.

Fabric transports include NVMe-oF using remote direct memory access (RDMA) and NVMexpress-oF mapped to FC. A technical subgroup of NVM Express Inc. worked on NVMe-oF with RDMA, while the T11 committee of the International Committee for Information Technology Standards (INCITS) developed NVMexpressover FC (FC-NVMexpress).

The NVMe-oF specification is largely the same as the NVMe specification. One of the main differences between them is the methodology for transmitting and receiving commands and responses. NVMe is design for local use and maps commands and responses to a computer’s shared memory via PCIe. By contrast, NVM over Fabrics employs a message-based system to communicate between the host computer and target storage device.

The stated design goal for NVMexpress-oF was to add no more than 10 microseconds of latency for communication between an nvm host computer and a network-connected NVMe storage device, in comparison to the latency associated with an NVMe storage device using a local computer’s PCIe bus.

 

Exit mobile version