The libpmem library provides low level persistent memory support. The libraries above are implemented using libpmem. Developers wishing to roll their own persistent memory algorithms will find this library useful, but most developers will likely use libpmemobj and let that library call libpmem for them.
This is not an official port of the NVM Library.
The official libpmem documentation can be found at: http://pmem.io/nvml/libpmem/