Abstract
This presentation from the PIRL 2020 conference is by Hanzian Huang of UC San Diego. The widely-used method to perform persistence memory-aware programming requires in-depth code changes using an NVMM-aware library, which is labor-intensive and error-prone. To address this problem, we try to introduce a deep reinforcement learning approach to help ease the persistence-aware programming. Given C, C++ or Java volatile source codes, our deep reinforcement learning model will help generate the corresponding non-volatile-aware codes based on PMDK library and the persistency will be checked by PMEMCHECK and PM-Reorder. Then the codes will be further improved by debugging tools. Experiments show that we can help generate persistence-aware programs with similar performance compared to the experts’ codes, which reduces the labor on modifying existing data structure and also reduces bugs in persistence-aware programming.