Abstract
It’s expected that persistent memory(PMEM) and PMEM aware applications improve performance. And then, one of the expected applications is database[1]. We gained the know-how through trying implementation of the PMEM aware database (PostgreSQL) using PMDK[2][3][4]. In this presentation, I will present the required know-how in PMEM aware applications development and evaluation using high-speed PMEM, not using the conventional low-speed HDD/SSD. The topics are as follows:
1. Challenges for implementing PMEM aware application
- Challenge to reduce synchronization functions like msync()/fsync()
- Introduction the way to implement the function of expanding/truncating the size of file
- Challenge to reduce the number of memory copies
2. Challenges for performance evaluation using PMEM
- Introduction the way to measure application performance with maximize PMEM performance
- Introduction about the influence of NUMA
[1] https://www.snia.org/sites/default/files/SDC/2017/presentations/Solid_St...
[2] http://pmem.io/pmdk/
[3] https://www.pgcon.org/2018/schedule/events/1154.en.html
[4] https://www.postgresql.org/message-id/C20D38E97BCB33DAD59E3A1%40lab.ntt....
Learning Objectives:
1. How to implement a PMEM aware application for efficiency
2. How to evaluate a PMEM aware application
3. Learn about the case of PostgreSQL as an example of PMEM aware application