Hacker News new | ask | show | jobs
by the8472 2787 days ago
> They're a nightmare to program because OSes do not have a good abstraction for them (at least not yet).

With DAX[0] linux already has the ability to put a filesystem (currently ext4 and xfs) on NVDIMMS and then let userspace address them through mmap while skipping the page cache indirection. I.e. you're directly byte-addressing them through the memory controller via standard memory-mapped file abstractions. Direct block device mapping of nvdimms without filesystem is also possible.

[0] https://www.kernel.org/doc/Documentation/filesystems/dax.txt

1 comments

The Persistent Memory Development Kit (PMDK) offers high-level abstractions over DAX. Looks like most mortals would use libpmemobj (or its C++ bindings).

http://pmem.io/pmdk/