Mesh: Compacting memory management for C/C++ applications

22Citations
Citations of this article
77Readers
Mendeley users who have this article in their library.

Abstract

Programs written in C/C++ can suffer from serious memory fragmentation, leading to low utilization of memory, degraded performance, and application failure due to memory exhaustion. This paper introduces Mesh, a plug-in replacement for malloc that, for the first time, eliminates fragmentation in unmodified C/C++ applications. Mesh combines novel randomized algorithms with widely-supported virtual memory operations to provably reduce fragmentation, breaking the classical Robson bounds with high probability. Mesh generally matches the runtime performance of state-of-the-art memory allocators while reducing memory consumption; in particular, it reduces the memory of consumption of Firefox by 16% and Redis by 39%.

Cite

CITATION STYLE

APA

Powers, B., Berger, E. D., Tench, D., & McGregor, A. (2019). Mesh: Compacting memory management for C/C++ applications. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) (pp. 333–346). Association for Computing Machinery. https://doi.org/10.1145/3314221.3314582

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free