LLMmap: Improving Memory Reclamation by Sharing the Allocation State in Linux
- Typ der Arbeit: Bachelorarbeit
- Status der Arbeit: reserviert
- Projekte: ParPerOS
- Betreuer: Lars Wrenger, Daniel Lohmann
Linux usually cannot reclaim anonymous memory because it does not know if there is important data that might be lost. Instead, it has to rely on the swap if it runs out of memory. Still, userspace processes can manually communicate (over syscalls like madivce) if memory is not needed anymore. However, these syscalls can be costly.
In this thesis, we want to create a new virtual memory area, that contains an instance of the lock-free LLFree allocator. Its lock-freedom property allows the allocator to be shared between different privilege levels. The idea is that, using this allocator, the user can mark which memory is used in the memory area and at the same time, the kernel can see this and reclaim unused memory. If the reclaim state is also stored in the allocator, the userspace could use this information to improve the allocation strategy, focusing on non-reclaimed pages to reduce page faults.
For the evaluation, we also have to modify an userspace allocator (like jemalloc) to use these LLFree memory areas.
Topics: Linux, 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]