Leveraging persistent memory in the Linux kernel


The Linux kernel has been designed with the idea that persistent storage is slow, has high latency, and can only be accessed asynchronously (i.e., by sending a request to a disk that will only answer at a later point in time). As a consequence, the Linux kernel avoids using persistent storage as much as possible and keeps most of its state in DRAM. Many subsystems of the kernel, such as the page cache or the swap mechanism, are fundamentally designed for slow drives, delaying accesses to the disk as much as possible. These subsystems are currently unable to leverage the speed and low latency of modern persistent byte-addressable memory (PMEM) -- unlike traditional disks, PMEM can read and write data at GB speed and persist data with sub-microsecond latency.
The goal of the project is to rethink the relationship between the Linux kernel and storage. The project will start with an analysis of the page cache. The page cache can be easily modified to leverage persistent memory by avoiding the need to flush dirty data to disk. We expect this change to provide an important speedup for applications that sync data to disk frequently (e.g., databases).
Contact Baptiste Lepers to discuss, sending a CV, transcript and short summary of why you are interested.


Dr Baptiste Lepers

Research Location

Computer Science

Program Type



The objective of the project is to improve the Linux kernel by allowing it to store data in fast persistent byte-addressable memory.

Additional Information

Requirements: fluent C programming, ability to navigate in a large codebase (Linux kernel).
All PhDs will be supervised by Baptiste Lepers and Willy Zwaenepoel (Dean of the Faculty of Engineering).

Want to find out more?

Contact us to find out what’s involved in applying for a PhD. Domestic students and International students

Contact Research Expert to find out more about participating in this opportunity.

Browse for other opportunities within the Computer Science .


Linux, kernel, DRAM, PMEM, C programming, storage

Opportunity ID

The opportunity ID for this research opportunity is: 2909

Other opportunities with Dr Baptiste Lepers