Systems Seminar - CSE

Persistent Memory Programming on Conventional Hardware

Terence Kelly
WHERE:
1571 GG BrownMap
SHARE:
THREE EVENTS, open to the public:
1. EECS 482 Lecture:  1:30 p.m. Wednesday 12 April 2023 in 1571 GGB
2. Software Reading Group discussion:  12:30-1:30 pm, Thursday 13 April 2023 in 3725 Beyster
3. Individual meetings with the speaker:  Wed 12 April and Thu 13 April, see below

Abstract:  Persistent memory is a software abstraction and a corresponding programming style, both of which are easy to implement and practice on ordinary computers — fancy newfangled non-volatile memory hardware is *not* required.  Persistent memory programming is easy to learn, and it can make applications simpler and more efficient by streamlining the handling of persistent data.

The EECS 482 lecture will provide an overview of persistent memory programming on conventional hardware and crash-tolerance mechanisms, with plenty of example code and real-world case studies.  The Software Reading Group will discuss a persistent memory allocator and its widespread deployment in a venerable scripting language:
https://dl.acm.org/doi/pdf/10.1145/3534855    [mandatory]
https://www.gnu.org/software/gawk/manual/pm-gawk/    [optional]

To schedule a meeting with the speaker on Wednesday 12 April or Thursday 13 April, contact him directly:  [email protected]

About the speaker:  Terence Kelly studied computer science at Princeton and the University of Michigan, earning his U-M EECS/CSE Ph.D. in 2002, followed by twenty years in industrial research (HP Labs) and software engineering (AWS/Amazon).  Kelly now teaches and evangelizes persistent memory programming and writes the popular “Drill Bits” column in ACM Queue magazine ( https://queue.acm.org/DrillBits ).

Faculty Host

Atul Prakash