Memristor, phase-change memory, and other emerging non-volatile memory (NVM) technologies will provide disk-like persistence but at DRAM-like latency. These NVM devices will allow applications to directly manipulate data via memory instructions, thus blurring the distinction between in-memory versus on-disk representations. How should developers write programs to benefit from non-volatile memory, and improve application performance? This tutorial will introduce participants to expected features in NVM devices, the research challenges associated with programming non-volatile memory, and survey software based solutions. We will cover issues related to the presence of volatile caches, consistency of persistent data, and the associated overheads. We will briefly review prior research on persistent programming such as persistent programming languages and orthogonal persistence, and then describe recent advances such as durable transactions and persistence for lock-based programs.

2016-PLDI-NVM-tutorial-final (2016-PLDI-NVM-tutorial-final.pptx)4.63MiB

Mon 13 Jun

Displayed time zone: Tijuana, Baja California change

09:00 - 10:00
How Should We Program Non-volatile Memory?Tutorials at Santa Cruz East
09:00
60m
Talk
How Should We Program Non-volatile Memory?
Tutorials
File Attached
10:30 - 12:00
How Should We Program Non-volatile Memory?Tutorials at Santa Cruz East
10:30
90m
Talk
How Should We Program Non-volatile Memory?
Tutorials
File Attached