Efficiently counting program events with support for on-line queries
- 1 September 1994
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Programming Languages and Systems
- Vol. 16 (5) , 1399-1410
- https://doi.org/10.1145/186025.186027
Abstract
The ability to count events in a program's execution is required by many program analysis applications. We represent an instrumentation method for efficiently counting events in a program's execution, with support for on-line queries of the event count. Event counting differs from basic block profiling in that an aggregate count of events is kept rather than a set of counters. Due to this difference, solutions to basic block profiling are not well suited to event counting. Our algorithm finds a subset of points in a program to instrument, while guaranteeing that accurate event counts can be obtained efficiently at every point in the execution.Keywords
This publication has 8 references indexed in Scilit:
- Optimally profiling and tracing programsACM Transactions on Programming Languages and Systems, 1994
- The Wisconsin Wind TunnelPublished by Association for Computing Machinery (ACM) ,1993
- Profile-Driven CompilationPublished by Defense Technical Information Center (DTIC) ,1991
- Fast breakpoints: design and implementationPublished by Association for Computing Machinery (ACM) ,1990
- Determining average program execution times and their varianceACM SIGPLAN Notices, 1989
- A software instruction counterACM SIGARCH Computer Architecture News, 1989
- An execution profiler for modular programsSoftware: Practice and Experience, 1983
- Optimal measurement points for program frequency countsBIT Numerical Mathematics, 1973