Persistent Memory Summit 2020 Presentation Abstracts

2019 Persistent Memory Summit Presentations



The Persistent Memory Programming Model

Andy Rudoff, Member, SNIA NVM Programming Technical Work Group and Persistent Memory SW Architect, Intel Corporation


In the seven years since we set out to define the programming model for persistent memory, we’ve seen a flurry of activity around OS enabling, application support, and some interesting new use cases. This session will summarize the latest activities around persistent memory programming, both inside SNIA, in academia, and across the ecosystem.

PM in the Wild: VMware Experience and Future Expectations

Richard A. Brunner, Principal Engineer, CTO Server Platform Technologies, Vmware



FreeBSD and Persistent Memory

Scott Phillips, Intel


FreeBSD has begun enabling persistent memory use cases, starting with an experimental NVDIMM driver in the 12.0-RELEASE.  An overview will be given of development to date of the kernel driver and userspace ports, as well as a sketch of planned future development.

Persistent Memory use cases in modern software architectures

Soji Denloye, Software Development Engineer, Intel Corporation


There are many applications that can benefit from persistent memory and, thanks to its versatility, many ways to bring about these benefits. We are learning that, for a given application, the best solution involves choosing how to apply persistent memory: as buffers, caches or storage and either in a persistent or volatile way. This talk will describe scenarios where persistent memory enabling of frameworks such as Cassandra, MemcacheD and RocksDB resulted in improved performance.

MemVerge Presentation


Evolution of the Persistent Memory Development Kit

Piotr Balcer, PMDK Architect, Intel Corporation


Starting from a couple academic papers and no actual persistent memory, the PMDK team made its first commit in 2014 and began a long journey of invention and learning. Persistent memory programming can be simple, given the right high-level APIs, and it can be complex and error prone when more flexible and powerful APIs are used. Meeting application requirements and constructing useful APIs requires years of experimentation, learning from mistakes, and integrating feedback from a large ISV community. Lead PMDK architect Piotr Balcer will talk through some of the lessons learned during PMDK development and usage by applications.

The Perfect Trifecta. NVMe, CXL and Persistent Memory!

Stephen Bates, Chief Technology Officer, Eideticom


The Compute eXpress Link (CXL) has the potential to bring coherency (sic) to the world of open, off-chip coherent busses. As such it will become an innovation point for the deployment of Persistent Memory and acceleration. In addition, thanks to its backward compatibility, CXL also has support for devices which include NVMe capabilities for legacy block and key-value storage, memory centric capabilities like CMB and network-centric capabilities like NVMe-oF. In this talk we will introduce the audience to CXL and how it can be used as an innovation platform to extend existing NVMe devices to the new and exciting world of CXL and Persistent Memory. We will discuss the nuts and bolts of CXL, the upgrade path from NVMe to CXL, a variety of use-cases for NVMe/CXL devices and software issues like drivers, OS support and management.

Persistent Memory: Media, Attachment, and Usage

Dave Eggleston, Principal of Intuitive Cognition Consulting



The commercialization of Persistent Memory is well underway, fundamentally changing the way processors load and store information. The characteristics of the non-volatile memory media (3DXP, PCM, MRAM, RRAM, others) determine the basic performance, reliability, and cost that Persistent Memory can deliver to the system. Brand new methods of processor attachment (DDR5, DDR-T, NVDIMM, CXL, CCIX, Gen-Z, OpenCAPI) for Persistent Memory promise to broaden its usage far beyond “DRAM replacement”, opening up vast resources enabling memory and power hungry applications.

In this talk, the speaker will:

  • Discuss the basic characteristics of Persistent Memory Media
  • Articulate how Persistent Memory enhances server architectures
  • Identify, compare, contrast the new methods for Persistent Memory attachment
  • Propose innovative ways applications will utilize Persistent Memory to overcome memory and power limitations
  • Discuss who is doing what within the Persistent Memory ecosystem


Providing Native Support for Byte-Addressable Persistent Memory in Golang

Pratap Subrahmanyam, Fellow, VMware


Persistent memory provides various benefits. First, its high density allows for large capacity random access storage to be situated close to compute. Second, its memory like latency allows for applications to directly place data structures that are latency sensitive in them. We fully expect the first value proposition to be the leading factor in the adopiton of persistent memory, primarily because it requires no changes to the applications. But, for full adoption of persistent memory, we need to make programming for byte addressable persistence easy. There are several efforts in this direction, and I will describe one of them that we are conducting in VMware, where we have ported the Golang compiler to have native support for persistent memory. We then use this compiler to develop a Redis compatible key value store, and we show that our compiler modifications make it easier to touch and feel byte addressable persistent memory from an application.

Back to Top

Oracle's Unique implementation of Persistent Memory for Accelerating Oracle Database workloads

Jia Shi, Sr. Director of Software Development for Exadata, Oracle Corporation


Persistent memory is a new silicon technology, adding a distinct storage tier of performance, capacity, and price between DRAM and Flash. The persistent memory is physically present on the memory bus of the storage server resulting in reads at memory speed, much faster than flash. Writes are persistent, surviving power cycles, unlike DRAM. Oracle has engineered Exadata Smart PMEM Cache and Exadata Smart PMEM Log functions to achieve this significant boost in Oracle Database performance.
Jia Shi, Sr. Dir of SW Development will describe the engineering details of their implementation in Exadata and how Oracle's software development teams are innovating with this technology.

Using Persistent Memory with Pelikan

Yao Yue, Software Architect, Twitter, Inc.


Pelikan is an open sourced, module cache developed by Twitter.  It is designed for high performance and high reliability.  In this session, Yao Yue will provide a brief overview of the Pelikan architecture and how it was modified to leverage persistent memory.

Introduction to PM Hackathons

Jim Fister, Principal, The Decision Place; Director, SNIA Persistent Memory Software Enabling


At the 2020 PM Summit, we've seen examples of successful companies developing for persistent memory in the application base. It's obvious that there's benefit to be found in persistent memory. SNIA and its participant companies have put a focus on creating an environment where it's possible for any programmer to learn the basics of software development using the PMDK toolkit. This session will provide an overview of the options companies have for educating the developer community on programming PM. It will also highlight educational tools and events that the company can utilize. Whether it's educating a few individuals, or the entire company's development organization, SNIA is ready to help our partners move to the new development paradigm.

Using Real World Workloads and Artificial Intelligence to Compare and Optimize Persistent Memory Performance

Eden Kim, CEO, Calypso Systems; Chair, SNIA Solid State Storage Technical Work Group


In this session, see how the use of Real World Application Workloads combined with Long Short-Term Memory (LSTM) Recurrent Neural Network (RNN) artificial intelligence can optimize storage performance in NVMe SSD, XL Flash, and Optane DCPMM Persistent Memory.  IOProfiler real world application captures are used to show improved SSD wear leveling, task scheduling, pre-fetching and caching, and minimized write amplification and garbage collection in XL Flash and NVMe SSD storage.  You will also see performance comparisons among synthetic database, real world database applications, and AI-optimized workloads.