ParPerOS: Parallel Persistency OS

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

Theses

Finished Theses

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

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
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.

Erweiterung des Python-Programmiermodells um NVRAM-persistierte Sprachobjekte

Typ: Masterarbeit
Status: abgeschlossen
Supervisors: Stefan Naumann, Daniel Lohmann
Entwurf eines Persistenz-Moduls für Python auf Basis von NVM

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
Extending the Linux memory management to use NVM for swapping.