This paper describes inprof, a tool used to study the memory allocation behavior of programs. mprof records the amount of memory each function allocates, breaks down allocation information by type and size, and displays a program''s dynamic cal graph so that functions indirectly responsible for memory allocation are easy to identify. mprof is a two-phase tool. The monitor phase is linked into executing programs and records information each time memory is allocated. The display phase reduces the data generated by the monitor and displays the information to the user in several tables. mprof has been implemented for C and Kyoto Common Lisp. Measurements of these implementations are presented.
Cited By
- Tlili S, Yang Z, Ling H and Debbabi M A Hybrid Approach for Safe Memory Management in C Proceedings of the 12th international conference on Algebraic Methodology and Software Technology, (377-391)
- Martonosi M, Ofelt D and Heinrich M (1996). Integrating performance monitoring and communication in parallel computers, ACM SIGMETRICS Performance Evaluation Review, 24:1, (138-147), Online publication date: 15-May-1996.
- Martonosi M, Ofelt D and Heinrich M Integrating performance monitoring and communication in parallel computers Proceedings of the 1996 ACM SIGMETRICS international conference on Measurement and modeling of computer systems, (138-147)
- Martonosi M, Gupta A and Anderson T MemSpy: analyzing memory system bottlenecks in programs Proceedings of the 1992 ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems, (1-12)
- Martonosi M, Gupta A and Anderson T (1992). MemSpy: analyzing memory system bottlenecks in programs, ACM SIGMETRICS Performance Evaluation Review, 20:1, (1-12), Online publication date: 1-Jun-1992.
Recommendations
Upper Bounds for Dynamic Memory Allocation
In this paper, we study the upper bounds of memory storage for two different allocators. In the first case, we consider a general allocator that can allocate memory blocks anywhere in the available heap space. In the second case, a more economical ...
Makalu: fast recoverable allocation of non-volatile memory
OOPSLA '16Byte addressable non-volatile memory (NVRAM) is likely to supplement, and perhaps eventually replace, DRAM. Applications can then persist data structures directly in memory instead of serializing them and storing them onto a durable block device. ...
Makalu: fast recoverable allocation of non-volatile memory
OOPSLA 2016: Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and ApplicationsByte addressable non-volatile memory (NVRAM) is likely to supplement, and perhaps eventually replace, DRAM. Applications can then persist data structures directly in memory instead of serializing them and storing them onto a durable block device. ...