-
Notifications
You must be signed in to change notification settings - Fork 99
Home
tnvme is a user space test application targeting the compliance verification of NVM Express (NVMe) compliant hardware. The NVMe home page is http://www.nvmexpress.org.
tnvme it not the complete compliance suite, rather it is the framework which empowers the building, and execution of compliance test cases. Further logic is necessary, in kernel space, to provide the low level support tnvme requires. The logic resident within the kernel is platform specific and the generic logic, non-platform specific, lives within tnvme. Currently the compliance suite targets Linux distributions only, however the design allows source code ports to other platforms by creating a corresponding kernel mode driver to implement the necessary IOCTL’s. The corresponding Linux kernel mode driver is dnvme which is resident within https://github.com/organizations/nvmecompliance as its own git repo.
tnvme is not a benchmark, throughput or performance measurement system, rather its goal is to verify hardware compliance against a written set of specifications. Functionality, not speed, was the main target of this application. It was seen that satisfying both speed and functionality could not be addressed simultaneously in all aspects of this design. Thus when a decision had to be made as to which one to choose, functionality always won.
Groups
Tests
Resource Lifetime
An alternative mechanism to view resources and the C++ classes which represent them is to generate the doxygen output against the source code.
1) cd tnvme 2) make doc 3) ./classHierarchy.sh