Computational Programs Command Set

Command Set

The individual command set specifications allow NVM Express to isolate and independently evolve command sets for emerging technologies such as Computational Storage, Zoned Namespaces and Key Value features.

NVM Express ratified Computational Storage to provide a standardized, vendor-neutral framework for connecting applications to NVMe Computational Storage devices across both compute and storage services. The Computational Programs Command Set was standardized as part of Computational Storage.

What is the Computational Programs Command Set?

Computational Programs provides a mechanism to execute programs on the device, including discovering pre-loaded programs, downloading programs and executing those programs. This command set also provides a host-driven approach for programs to operate on data located in an NVM subsystem.

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.