Answering Your Questions: NVMe™ 1.4 Features and Compliance: Everything You Need to Know


By Nick Adams and David Woolf

Earlier this month, we hosted an NVM Express™, Inc. webcast to discuss the newly released NVMe™ 1.4 specification. We’re very excited about this release and what it means for the cloud, enterprise and client market segments, so we were glad to have the opportunity to educate the public about its impact.

We began our webcast with detailed information on the new specification features and their uses. These features included IO Determinism, Namespace Write Protect, Persistent Event Log and Verify Command. After a primer on the new NVMe 1.4 features, webcast attendees learned about what these features mean for compliance testing at the official NVM Express, Inc. testing site, the University of New Hampshire InterOperability Laboratory (UNH-IOL).

We received great participation, with an abundance of audience questions. Below are the questions and answers we felt should be highlighted:

NVMe 1.4 Specification Features

  1. Can you give an example of how Namespace Preferred Write Granularity and Namespace Write Assist help improve IO performance? Can you also clarify how these hints differ from data set management?

The backend media on SSD devices already have write granularities and write alignment requirements, regardless of how the information is interfacing with the host. What happens when you’re not on these specific granularities, or alignments and sizes is that the underlying device is performing multiple reads and writes. Host adherence to the IO performance hints allow the backend firmware to avoid those extra transactions. As a result, the overall system performance will rise.

With data set management, the hint is coming from the host to the drive, for the drive to prioritize and configure how its background tasks function. IO performance and endurance hints are more about drive access and media access. These hints depend on the operating system conforming to those constraints.

  1. Can you go a little more in-depth about debugging at scale?

Today, NVM Express, Inc. is receiving a lot of feedback that each consumer, customer, and large-scale deployment of SSD devices must collect data in a very vendor-specific way. From an NVM Express technology perspective, we’re looking at adding the infrastructure that is necessary for debugging. However, our focus is to ensure that our mechanisms, including notifications and logging data, can be done in a vendor-neutral way.

  1. Are the mentioned improvements for the NVMe 1.4 specification also relevant for future updates to NVMe over Fibre Channel?

The NVMe 1.4 specification is the ‘base specification’ and is designed to be transport agnostic. Therefore, Fibre Channel (FC) devices implementing NVMe/FC can take advantage of these new features without updates to NVMe/FC.

  1. What changes were made to endurance groups?

Endurance groups are a new feature added to NVMe 1.4 specification. Endurance groups communicate how the drive and its back-end features manage endurance across the media for a group of NVM sets and the namespaces that sit inside those sets.

NVMe 1.4 Product Testing

  1. Why not test for compliance to expected latencies in the deterministic and non-deterministic windows in Predictable Latency Mode? 

Since the NVMe specification does not have a requirement about what those latencies are or how to meet them, we don’t include a check for latency in the compliance program. There are requirements around properly advertising expected latency parameters, and that’s what our compliance check focuses on today. However, we’re looking at adding a feature to our test tool to measure the latency so that a user can tell if the measured latency in the deterministic window was matching up with the advertised latency or not. Again, hitting those latency numbers is not necessarily a compliance issue, however, it could be a qualification issue for an end-user.

  1. For Namespace Write Protect and Persistent Event Log features, is it possible to test persistence across power cycles?

Our intention for the compliance program is to provide a mechanism for checking compliance that can be easily deployed in anyone’s lab. Today, the tests can be executed with a regular PC system, avoiding specialized hardware. There’s equipment that can allow you to test across power cycles, and this testing is interesting and valuable to look at, but we have chosen not to include that in the compliance program today

  1. Is there a timeline for implementing full NVMe 1.4 compliance testing? 

We are testing some NVMe 1.4 features today. Those tests are included in the latest release of our test tools and will be run at next month’s NVMe and NVMe-oF Plugfest #12. Our target date for implementing tests for full NVMe 1.4 feature support is Spring 2020.

  1. Are the mentioned test tools free of charge to everyone, or do you have to be a paying member of NVM Express, Inc?

The UNH-IOL NVM Express test tools are not freely available – they are available to companies who are participating in the NVM Express community and our compliance test service.

  1. Are there any scheduled plugfests in Europe?

Currently, we have no plans for an NVMe plugfest in Europe. Of course, we want to make sure our events meet the needs of the NVM Express, Inc community, both in timing and location. If there’s enough interest, we would consider this in the future. Feel free to reach out to us and let us know.

We thank all attendees who joined our live webcast and those who actively participated. For those who were unable to join us live, the webcast is available for playback on the NVM Express, Inc. BrightTALK channel.

The full NVMe 1.4 specification is available for public download on the NVM Express, Inc. website. If you’d like to get an overview of the changes and revisions that were made in version 1.4, we encourage you to check out this resource.

We look forward to continuing our work within the NVM Express, Inc. community and sharing our latest technology innovations with the greater storage industry.