Zur Hauptnavigation wechseln Zur Suche wechseln Zum Hauptinhalt wechseln

Brug: An Adaptive Memory (Re-)Allocator

  • Weikang Weng*
  • , Alexandru Uta
  • , Jan S. Rellermeyer
  • *Korrespondierende*r Autor*in für diese Arbeit

Publikation: Beitrag in Buch/Bericht/Sammelwerk/KonferenzbandAufsatz in KonferenzbandForschungPeer-Review

Abstract

Although memory allocation is well-studied, it is far from being a solved problem. There exist many allocators, each offering varied performance depending on the underlying workload. With workloads becoming ever more complex, practitioners need to take difficult decisions for the performance tuning of memory allocation: which allocators to choose and how to tweak their knobs are legitimate questions.In this article, we take a deep look at memory allocators and propose Brug, an adaptive memory allocator that builds upon the strengths of all existing allocators and discards their weaknesses. Brug can help programmers choose the suitable allocator for their applications or even for individual data structures and functions within applications, allowing for different allocators within the same program. Brug also offers an auto-tuner to minimize developer decision-making.Brug comes in two flavors: (1) Rust-based library that can be added to modern Rust code bases, helping in allocation and re-allocation performance and diagnosis. (2) C-based library that can be dynamically linked at runtime for existing legacy programs to optimize their performance. Brug was deployed with industry standard-grade frameworks, such as Apache Arrow, Wasmtime WebAssembly virtual machine, and Redis. Our experiments show that Brug can improve performance in all types of applications and help developers toward taking otherwise difficult decisions. Brug consistently improves application execution time.

OriginalspracheEnglisch
Titel des SammelwerksProceedings
Untertitel2024 IEEE 24th International Symposium on Cluster, Cloud and Internet Computing, CCGrid 2024
Herausgeber (Verlag)Institute of Electrical and Electronics Engineers Inc.
Seiten67-76
Seitenumfang10
ISBN (elektronisch)9798350395662
ISBN (Print)979-8-3503-9567-9
DOIs
PublikationsstatusVeröffentlicht - 8 Okt. 2024
Veranstaltung24th IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing, CCGrid 2024 - Philadelphia, USA / Vereinigte Staaten
Dauer: 6 Mai 20249 Mai 2024

Publikationsreihe

NameIEEE International Symposium on Cluster, Cloud and Internet Computing
ISSN (Print)2376-4414
ISSN (elektronisch)2993-2114

Konferenz

Konferenz24th IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing, CCGrid 2024
Land/GebietUSA / Vereinigte Staaten
OrtPhiladelphia
Zeitraum6 Mai 20249 Mai 2024

ASJC Scopus Sachgebiete

  • Computernetzwerke und -kommunikation
  • Hardware und Architektur
  • Informationssysteme und -management
  • Sicherheit, Risiko, Zuverlässigkeit und Qualität

Dieses zitieren