NVM Command Set Specification

Command Set

The individual command set specifications allow NVM Express to isolate and independently evolve command sets for emerging technologies such as Zoned Namespaces, Key Value and eventually computational storage. The NVMe specifications before NVMe 2.0 included all command set details. NVMe 2.0 separates these command sets into different specifications.

The NVMe Base specification defines the Admin Command Set, which provides essential administrative and management commands, including identify and get-log-page.


What is the NVM Command Set specification?

The NVM Command Set specification defines the NVM Command Set, which includes the most essential I/O commands: read and write. The NVM Command Set specification is effectively the block address command set that existed in NVMe before the NVMe 2.0 specifications.

As of August 2024, NVMe is a set of the following eleven specifications:

  • NVM Express® Base Specification, Revision 2.1
  • Command Set Specifications:
    • NVM Express® NVM Command Set Specification, Revision 1.1
    • NVM Express® NVMe Zoned Namespaces Command Set Specification, Revision 1.2
    • NVM Express® Key Value Command Set Specification, Revision 1.1
    • NVM Express® Subsystem Local Memory Command Set Specification, Revision 1.0
    • NVM Express® Computational Programs Command Set Specification, Revision 1.0
  • Transport Specifications:
    • NVM Express® NVMe over PCIe Transport Specification, Revision 1.1
    • NVM Express® RDMA Transport Specification, Revision 1.1
    • NVM Express® TCP Transport Specification, Revision 1.1
  • NVM Express® NVM Express Management Interface Specification, Revision 2.0
  • NVM Express® NVMe Boot Specification, Revision 1.1

The NVM Express® Base Specification, Revision 2.1 reorganizes sections to distinguish requirements on functionality common to PCIe® and Fabrics implementations, specific to PCIe implementations, and specific to Fabrics implementations.