Detailed heap profiling

Modern software systems heavily use the memory heap. As systems grow more complex and compute with increasing amounts of data, it can be difficult for developers to understand how their programs actually use the bytes that they allocate on the heap and whether improvements are possible. To answer this question of heap usage efficiency, we have built a new, detailed heap profiler called Memoro. Memoro uses a combination of static instrumentation, subroutine interception, and runtime data collection to build a clear picture of exactly when and where a program performs heap allocation, and crucially how it actually uses that memory. Memoro also introduces a new visualization application that can distill collected data into scores and visual cues that allow developers to quickly pinpoint and eliminate inefficient heap usage in their software. Our evaluation and experience with several applications demonstrates that Memoro can reduce heap usage and produce runtime improvements of 10%.

Published in:
Proceedings of the 2018 ACM SIGPLAN International Symposium on Memory Management
Presented at:
2018 ACM SIGPLAN International Symposium on Memory Management, Philadelphia, PA USA, June 6, 2018
Jun 18 2018
New York, NY, ACM

 Record created 2018-06-25, last modified 2018-09-13

Rate this document:

Rate this document:
(Not yet reviewed)