ParPerOS: Parallel Persistency OS (DFG: LO 1719/8-1 and DI 2840/2-1)
ParPerOS is a joint project with IBR (Co-PI: Christian Dietrich) and part of the DFG Priority Program "Disruptive Memory Technologies" (SPP 2377, Speaker: Olaf Spinczyk).
The management of memory resources has always been a core task of the operating system. However, OS designers are now facing disruptive changes on the memory side: New memory types, such as high-bandwith memory (HBM) or non-volatile memory (NVM) have arrived and more types of processing elements, such as RDMA-capable NICs, GPGPUs, or FPGA-based accellerators, access virtual memory directly via the IO-MMU. These heterogenious memory systems (HMSs) put not only the suitability of the classical memory hierarchy and memory access patterns at question, but also challenge the way memory is managed inside the kernel.
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 may consist of volatile, persistent, distributed and other types of main memory, accessed in parallel by a multitude of different processing elements (CPU, GPU, NIC, RDMA).
People
Latest News
Lars Wrenger receives a Google PhD Fellowship in Systems, Networking and Cloud Computing. Congrats, Lars!
“These PhD Fellowships recognize outstanding graduate students who are conducting exceptional and innovative research in computer science and related fields, specifically focusing on candidates who seek to influence the future of technology. The program provides vital direct financial support for their PhD pursuits and connects each Fellow with a dedicated Google Research Mentor, reinforcing our commitment to nurturing the academic community.”
- 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.
Publications
-
OSDI
Conference
A*
MettEagle: Costs and Benefits of Implementing Containers on Microkernels -
19th Symposium on Operating System Design and Implementation (OSDI '25)2025.
PDF [BibTex]
-
EuroSys
Conference
A
HyperAlloc: Efficient VM Memory De/Inflation via Hypervisor-Shared Page-Frame Allocators -
Proceedings of the Twentieth European Conference on Computer SystemsACM2025.
PDF Details 10.1145/3689031.3717484 [BibTex]
-
JSA
Journal
Analyzing the memory ordering models of the Apple M1 -
Journal of Systems Architecture1492024.
PDF 10.1016/j.sysarc.2024.103102 [BibTex]
-
DIMES
Workshop
Best Paper Award
The New Costs of Physical Memory Fragmentation -
Proceedings of the 2nd Workshop on Disruptive Memory Systems (SOSP-DIMES '24)Association for Computing Machinery2024Best Paper Award.
PDF Details 10.1145/3698783.3699378 [BibTex]
-
DIMES
Workshop
Morsels: Explicit Virtual Memory Objects -
Proceedings of the 1st Workshop on Disruptive Memory SystemsAssociation for Computing Machinery2023.
PDF Details Slides 10.1145/3609308.3625267 [BibTex]
-
USENIX
Conference
A
Distinguished Artifact Award
LLFree: Scalable and Optionally-Persistent Page-Frame Allocation -
2023 USENIX Annual Technical Conference (USENIX '23)USENIX Association2023Distinguished Artifact Award.
PDF Details Slides [BibTex]
-
USENIX
Conference
A
MELF: Multivariant Executables for a Heterogeneous World -
2023 USENIX Annual Technical Conference (USENIX '23)USENIX Association2023.
PDF Details [BibTex]
-
ARCS
Conference
Best Paper Award
TOSTING: Investigating Total Store Ordering on ARM -
Proceedings of the 36th GI/ITG International Conference on Architecture of Computing Systems (ARCS 23)Springer International Publishing2023Best Paper Award.
PDF Details Slides 10.1007/978-3-031-42785-5_10 [BibTex]
-
SIGMOD
Conference
A*
Virtual-Memory Assisted Buffer Management -
Proceedings of the ACM SIGMOD/PODS International Conference on Management of DataACM2023.
PDF 10.1145/3588687 [BibTex]
Theses
Currently Running
AllocAPI: Designing and Introducing a Flexible Page Allocator API in Linux
- Typ
- Masterarbeit
- Status
- laufend
- Supervisors
- Lars Wrenger
Daniel Lohmann
Application-Specific Hash-Table Optimization for Scalable Metadata-Management in the Linux Kernel
- Typ
- Bachelorarbeit
- Status
- laufend
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Linus Wolkersdorfer
Developing a low-level NVMe driver for microbenchmarks
- Typ
- Bachelorarbeit
- Status
- laufend
- Supervisors
- Kenny Albes
Daniel Lohmann - Bearbeiter
- Ash Vollmer
LLZig: Highly-Parallel Page Frame Allocation in Zig
- Typ
- Bachelorarbeit
- Status
- laufend
- Supervisors
- Lars Wrenger
Daniel Lohmann
Shared Virtual-Memory Objects for ARM64
- Typ
- Bachelorarbeit
- Status
- laufend
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Philipp Bischoff
Shared Virtual-Memory Objects for Disaggregated Memory with Limited Coherency
- Typ
- Bachelor-/Masterarbeit
- Status
- laufend
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Daria Richter
VLLFree: Improving Memory Reclamation by Giving the Linux Kernel Direct Access to Userspace Allocators
- Typ
- Masterarbeit
- Status
- reserviert
- Supervisors
- Lars Wrenger
Daniel Lohmann
Finished Theses
Transparent Huge Pages for Virtual-Memory Objects
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Marvin Steiner (abgegeben: 29. Dec 2025)
Multi-Target Virtual-Memory Objects
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Nils Fuhler (abgegeben: 12. Sep 2025)
Spatially Grouping Allocations based on their Context to avoid Memory Fragmentation in Linux
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Daniel Lohmann
Dynamic Metadata Management for Virtual-Memory Objects
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Alex Alfonso Trigo (abgegeben: 07. Aug 2025)
AsyncZero: Latency Hiding of Page Zeroing in Linux
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Daniel Lohmann - Bearbeiter
- Henrik Cohrs (abgegeben: 15. Apr 2025)
LLMmap: Improving Memory Reclamation by Sharing the Allocation State in Linux
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Daniel Lohmann
LLFreeBSD: Integrating the LLFree Page Frame Allocator into FreeBSD
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Daniel Lohmann
Enhancing Energy Efficiency with Advanced DRAM Management in Linux
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Christian Dietrich
Daniel Lohmann - Bearbeiter
- Illia Ostapyshyn (abgegeben: 01. Nov 2024)
Efficient Swapping of Shared Virtual-Memory Objects
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Julian-Dominik Helmsen (abgegeben: 05. Aug 2024)
Page Eviction for Shared Virtual-Memory Objects
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Tim Hollmann (abgegeben: 03. Jul 2024)
Optimizing Memory Metadata: Dynamic Allocation of Struct Pages in the Linux Kernel
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Paul Aumann (abgegeben: 14. Jun 2024)
Fast Memory Ballooning for Virtual Machines with LLFree
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Daniel Lohmann - Bearbeiter
- Marco Wurps (abgegeben: 02. May 2024)
Efficient Copy-on-Write for Virtual-Memory Objects
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Pasha Fistanto (abgegeben: 02. May 2024)
Huge Pages for Virtual-Memory Objects
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Marko Bolowski (abgegeben: 18. Mar 2024)
Investigating Total Store Ordering on the ARM M1
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Dominik Töllner
Daniel Lohmann
Efficient Serialization of Page-Table-Based Virtual Memory Objects
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann
Context-Based Mitigations for Side-Channel Attacks via Kernel Address-Space Views in Linux
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Florian Rommel
Daniel Lohmann
IOMMU-assisted Memory Management: Sharing Virtual Memory Objects for Efficient Computing
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Kenny Albes (abgegeben: 05. Dec 2023)
Morsel Managment Layer: Making Morsels Actually Useful
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Darian Biastoch (abgegeben: 26. Oct 2023)
Databases on NVRAM
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Bearbeiter
- Matthias Wormann (abgegeben: 02. Oct 2023)
Investigating Suspend to Disk in Linux
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Daniel Lohmann - Bearbeiter
- Jannik Jahn (abgegeben: 25. Sep 2023)
LLC: DeRUSTing the Lo(ck|g)-Free Allocator for a C-Based OS Integration
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Daniel Lohmann - Bearbeiter
- Helge Misfeldt (abgegeben: 18. Aug 2023)
Fast Memory Compaction for Page Allocators
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Daniel Lohmann
Self-Contained Virtual-Memory Areas for Non-Volatile RAM in the Linux Kernel
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Florian Rommel
Christian Dietrich
Daniel Lohmann - Bearbeiter
- Alexander Halbuer (abgegeben: 16. Nov 2022)
Lo(ck|g)-free Page Allocator for Non-Volatile Memory in the Linux Kernel
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Florian Rommel
Christian Dietrich
Daniel Lohmann - Bearbeiter
- Lars Wrenger (abgegeben: 04. Apr 2022)
Vermeidung von Seitenfehlern zum Programmstart durch einen persistent-prädiktiven Seitenzwischenspeicher im Linux Kern
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Stefan Naumann
Daniel Lohmann - Bearbeiter
- Simon Burandt
Erweiterung des Python-Programmiermodells um NVRAM-persistierte Sprachobjekte
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Stefan Naumann
Daniel Lohmann
Erweiterung des Linux-Kerns um mehrstufige Seitenumlagerung für Systeme mit nichtflüchtigem Speicher (NVM)
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Stefan Naumann
Daniel Lohmann - Bearbeiter
- Christian Müller
Entwurf und Implementierung einer leichtgewichtigen Linux-Programmbibliothek für persistent-adressierte, nicht-flüchtige Speicherbereich
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Stefan Naumann
Daniel Lohmann - Bearbeiter
- Niklas Hoh

