LLFreeBSD: Integrating the LLFree Page Frame Allocator into FreeBSD
- Typ der Arbeit: Bachelorarbeit
- Status der Arbeit: abgeschlossen
- Projekte: ParPerOS
- Betreuer: Lars Wrenger, Daniel Lohmann
The Lo(ck|g)-free allocator, short LLFree, is a new cache-optimized, highly-parallel and optionally-persistent page frame allocator. It uses atomic instructions, provided by the CPU, instead of locks or logging. This has two main benefits: (1) the allocator scales very well on multicore systems, and (2) it can be used to efficiently manage persistent memory. It was already successfully integrated into Linux, replacing its page frame allocator.
In this topic, we want to integrate our C-based LLFree into new operating systems, like FreeBSD. This includes researching the OS, determining whether it would profit from a parallel allocator, and replacing its page frame allocator with LLFree. Apart from better multicore performance, LLFree has the tendency to reduce fragmentation. These two properties should also be benchmarked and evaluated for LLFreeBSD.
Optional: There is ongoing work on making FreeBSD persistent on Intel's Optane Memory. Having LLFree as a persistent allocator for this OS might be interesting to investigate.
Topics: FreeBSD, C, Allocator
Links
Related Publications
-
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]
Previous Work
LLC: DeRUSTing the Lo(ck|g)-Free Allocator for a C-Based OS Integration
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Daniel Lohmann - Project
- ParPerOS
- Bearbeiter
- Helge Misfeldt (abgegeben: 18. Aug 2023)