ParPerOS: Parallel Persistency OS (DFG: LO 1719/8-1 and DI 2840/2-1)

ParPerOS is a joint project with TUHH (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

2023-03-06 Lars Wrenger Receives GI-FGBS Award for Best Master Thesis

Lars Wrenger receives the award for best master thesis in the field of operating systems. The award is granted annually by the SIG on Operating Systems of the German Computer Assiciation (GI Fachgruppe Betriebssysteme) solely on the base of scientific excellence. It includes a price money of 500 €. Congrats, Lars!

In OS memory management, the page-frame allocator is the most fundamental component, as it manages the physical memory. In his thesis Lo(ck|g)-free Page Allocator for Non-Volatile Memory in the Linux Kernel Lars designs, implements and evaluates a new highly scalable page-frame allocator for volatile and nonvolatile memories. This excellent work is now continued within the ParPerOS project.

2022-06-13 New DFG Grant: Parallel Persistency OS (SPP 2377)
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.
ParPerOS is part of the DFG Priority Program "Disruptive Memory Technologies" (SPP 2377). DFG is supporting us for three years with two positions for doctoral researchers (E13, one at SRA), two positions for student researchers (one at SRA), and some additional lab equippment. ParPerOS is a cooperation project with the OSG group from Christian Dietrich.

Theses

Currently Running

Investigating Total Store Ordering on the ARM M1

Analyzing the performance impact of Total Store Ordering on the M1 ARM Processor.

 
Typ
Bachelorarbeit

 
Status
reserviert

 
Supervisors
Lars Wrenger
Daniel Lohmann

Databases on NVRAM

Bringing the advantages of non-volatile memory to database applications using the new morsel memory primitive as efficient abstraction layer.

 
Typ
Bachelorarbeit

 
Status
reserviert

 
Supervisors
Alexander Halbuer
Daniel Lohmann

Fast Memory Compaction for Page Allocators

Active memory defragmentation for page allocators.

 
Typ
Bachelorarbeit

 
Status
laufend

 
Supervisors
Lars Wrenger
Daniel Lohmann

Morsel Managment Layer: Making Morsels Actually Useful

Bringing the new morsel memory abstraction to applications.

 
Typ
Masterarbeit

 
Status
reserviert

 
Supervisors
Alexander Halbuer
Daniel Lohmann

Finished Theses

Entwurf und Implementierung einer leichtgewichtigen Linux-Programmbibliothek für persistent-adressierte, nicht-flüchtige Speicherbereich

Eine leichtgewichtige User Space Bibliothek soll entworfen und implementiert werden um effizient mit einem persistent-addressierten nicht-flüchtigen Speicherbereich arbeiten zu können.

 
Typ
Bachelorarbeit

 
Status
abgeschlossen

 
Supervisors
Stefan Naumann
Daniel Lohmann

 
Bearbeiter
Niklas Hoh

Primitives and Abstractions for Self-Contained Virtual-Memory Areas in the Linux kernel

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]

 
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

Designing and implementing a lock-free and log-free page allocator for morsels, a new abstraction for the management of non-volatile memory in the linux kernel [PDF]

 
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

Seitenfehler beim Start von Programmen sollen durch einen Seitenzwischenspeicher im NVRAM vermieden werden. Dazu soll der Linux Kern entsprechend erweitert werden, die Zugriffe zu speichern und bei späteren Programmstarts ohne Pagefault einzublenden.

 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Stefan Naumann
Daniel Lohmann

 
Bearbeiter
Simon Burandt

Erweiterung des Python-Programmiermodells um NVRAM-persistierte Sprachobjekte

Entwurf eines Persistenz-Moduls für Python auf Basis von NVM

 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Stefan Naumann
Daniel Lohmann

Erweiterung des Linux-Kerns um mehrstufige Seitenumlagerung für Systeme mit nichtflüchtigem Speicher (NVM)

Extending the Linux memory management to use NVM for swapping.

 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Stefan Naumann
Daniel Lohmann

 
Bearbeiter
Christian Müller