Abstract
From the past few years there has been a lot of effort by SNIA NVM TWG to standardize the programming model. More recently, we see a lot of development for supporting persistent memory across the Linux and Windows kernel. Moreover, the persistent memory development kit (PMDK) from pmem.io, provides a gamut of libraries build on top of the Direct Access (DAX) feature available on Linux and Windows, allowing applications to directly load/store to persistent memory by memory-mapping files on persistent memory file system. This talk will cover some of the advancements made in the Linux kernel and few examples of how to use it from the user space through PMDK (using libpmem, libpmemlog). Few additions in Linux kernel that will be covered include: 1. Huge Pages 2. Libnvdimm subsystem - supports three types of NVDIMMs: PMEM, BLK, and NVDIMM devices. 3. Device-DAX 4. DAX-based file systems 5. ZUFS – Zero Copy User mode File System Learning Objectives Additions and changes in Linux Kernel keeping in mind Persistent Memory How to use PMEM.io library kit to develop some applications in user space on top of persistent memory