- ParPerOS: Parallel Persistency OS (DFG: LO 1719/8-1 and DI 2840/2-1)
- In ParPerOS, we examine new abstractions for unified but efficient and optionally crash-consistent low-level memory management for data objects in heterogeneous memory systems that consist of volatile, persistent, distributed and other types of main memory.
Morsels: Explicit Virtual Memory Objects
Proceedings of the 1st Workshop on Disruptive Memory SystemsAssociation for Computing Machinery2023.
Distinguished Artifact Award
LLFree: Scalable and Optionally-Persistent Page-Frame Allocation
2023 USENIX Annual Technical Conference (USENIX '23)USENIX Association2023Distinguished Artifact Award.
Open Theses Topics
By design, morsels exist in main memory without being just an intermediate representation of a file. However, for some applications it would be desirable to store objects on a disk in order to persist its data during reboots or to cope with limited main memory.
Implementing classical, full-featured COW with multiple nesting levels would introduce substantial management overhead on the operating system side. Our goal with Morsels is to eliminate this overhead while retaining limited COW functionality.
Currently, Morsels only support 4-KiB pages, but with larger page sizes the management overhead could be further reduced and the average memory access could be sped up, due to faster page-table walks and an increased TLB coverage.
The translation lookaside buffer (TLB) caches present page table entries, so that pages can not be unmapped by simply clearing the related page table entry. However, page eviction is vital for implementing advanced features like swapping and huge-page merging.
Finished Student Theses
With the discontinuation of Intel Optane and persistent memory being rarely available in general, alternative solutions need to be considered. One approach is to persist virtual memory objects on disk when persistent memory is not available.
Implement the basic abstraction for self-contained virtual-address-space areas in Linux, by which we want to ease the allocation, the sharing, and the management of huge amounts of memory. [PDF]