π€ AI Summary
This paper addresses the challenge of manual memory allocator tuning under industrial workloads. We propose GreenMalloc, the first framework to integrate NSGA-II multi-objective optimization with a lightweight rand_malloc proxy evaluation, enabling efficient parameter search driven by execution traces and seamless configuration transfer to the gem5 simulation environment. GreenMalloc supports automated tuning of both glibc malloc and TCMalloc, jointly optimizing heap memory compression and runtime efficiency. Its key innovations are: (i) a trace-aware multi-objective search mechanism, and (ii) a low-overhead proxy evaluation paradigm synergistically validated in simulation. Evaluated across diverse real-world workloads, GreenMalloc achieves an average 4.1% reduction in heap memory usage while improving runtime performance by 0.25%, demonstrating its effectiveness, portability, and generality.
π Abstract
We present GreenMalloc, a multi objective search-based framework for automatically configuring memory allocators. Our approach uses NSGA II and rand_malloc as a lightweight proxy benchmarking tool. We efficiently explore allocator parameters from execution traces and transfer the best configurations to gem5, a large system simulator, in a case study on two allocators: the GNU C/CPP compiler's glibc malloc and Google's TCMalloc. Across diverse workloads, our empirical results show up to 4.1 percantage reduction in average heap usage without loss of runtime efficiency; indeed, we get a 0.25 percantage reduction.