Explore the development of Pmemcheck, a new Valgrind-based tool for detecting persistent memory programming errors, in this 55-minute conference talk. Dive into the motivations behind creating a specialized error detector and the decision to utilize the Valgrind framework. Gain insights into common challenges associated with byte-addressable persistent memory usage. Examine the intricate design of Pmemcheck and the modifications made to Valgrind's core to accommodate persistent memory support. Learn about persistent memory programming models, phase safety, atomicity, and implementation details. Discover how Pmemcheck compares to MemCheck, understand its functionality, and explore practical examples of its application. Conclude with a look at future developments and participate in a Q&A session to deepen your understanding of this innovative tool for enhancing persistent memory programming practices.
Using the Valgrind Framework to Build a Persistent Memory Error Detector