Package: wnpp Severity: wishlist Owner: Adam Borowski <kilob...@angband.pl>
* Package name : pmdk Version : 1.5 Upstream Author : Intel and contributors * URL : https://pmem.io/pmdk/ * License : BSD-3 Programming Lang: C, C++ Description : persistent memory development kit The Persistent Memory Development Kit is a collection of libraries and tools to manage and access non-volatile memory. Via the DAX feature, most operations don't require a call to the kernel, allowing operating directly on such memory with only minimal latencies. . While basic access would require nothing but a mmap() call, it is non-trivial for a programmer to achieve consistency when facing unexpected power loss -- individual cachelines often don't get committed to actual memory for a prolonged time, become persistent in an unexpected order; etc. PMDK hides all this complexity, and provides tools to check for errors that would make stores non-durable, fail crash consistency, persistently leak space, etc. . Available Libraries: * libpmem: provides low level persistent memory support * libpmemobj: provides a transactional object store, providing memory allocation, transactions, and general facilities for persistent memory programming. * libpmemblk: supports arrays of pmem-resident blocks, all the same size, that are atomically updated. * libpmemlog: provides a pmem-resident log file. * libvmem: turns a pool of persistent memory into a volatile memory pool, similar to the system heap but kept separate and with its own malloc-style API. * libvmmalloc: transparently converts all dynamic memory allocations into persistent memory allocations. * libpmempool: provides support for off-line pool management and diagnostics. * librpmem: provides low-level support for remote access over RDMA. Available Utilities: * pmempool: manages and analyzes persistent memory pools. * pmemcheck: pmem-specific instrumentation for Valgrind. There's existing packaging in Ubuntu (for 1.4) and upstream (current and well-tested, but not very debianish), I intend to take pieces from both.