Answers are grounded in this paper and cite their sources.
Experimental study demonstrates accurate memory footprint estimation in complex workloads, indicating efficient compiler optimizations without severe runtime overhead.
Knowing the precise memory footprint of applications is necessary to optimize their memory behavior via compiler passes. However, obtaining the memory footprint of workloads is challenging. Tracking heap allocations using Valgrind’s Massif tool provides insufficient information, as stack usage and allocations made by other images, such as library calls, cannot be tracked. As such, it becomes necessary to instrument individual memory instructions to learn the true memory usage of programs. However, instrumenting each memory instruction is infeasible since it causes programs to slow down exponentially, making instrumenting large programs practically impossible. Hence, it is only feasible to instrument memory references sparsely, leading to the challenge of estimating the whole program memory footprint from a small fraction of accesses. To that effort, we devise MemPrint , a statistical method to approximate the whole program memory footprint from sparse random memory traces. MemPrint achieves significant improvement over prior works that use sampled memory traces, achieving error rates ranging between 0.29%–21.71% while minimizing overhead from PIN.
No takes yet. Share an insight, caveat, or question.
Mustakin et al. (2026) studied this question.
Synapse has enriched 10 related papers. Consider them for comparative context: