Efficiently counting program events with support for on-line queries
ACM Transactions on Programming Languages and Systems (TOPLAS)
Proceedings of the 29th annual ACM/IEEE international symposium on Microarchitecture
An Efficient Online Path Profiling Framework for Java Just-In-Time Compilers
Proceedings of the 12th International Conference on Parallel Architectures and Compilation Techniques
Extending Path Profiling across Loop Backedges and Procedure Boundaries
Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization
Preferential path profiling: compactly numbering interesting paths
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Mining hot calling contexts in small space
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
Probabilistic dataflow analysis using path profiles on structure graphs
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
The hot path SSA form: extending the static single assignment form for speculative optimizations
CC'10/ETAPS'10 Proceedings of the 19th joint European conference on Theory and Practice of Software, international conference on Compiler Construction
Profiling all paths: A new profiling technique for both cyclic and acyclic paths
Journal of Systems and Software
Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Online identification of frequently executed acyclic paths by leveraging data stream algorithms
Proceedings of the 28th Annual ACM Symposium on Applied Computing
Ball-Larus path profiling across multiple loop iterations
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
Hi-index | 0.00 |
The Ball-Larus path-profiling algorithm is an efficient technique to collect acyclic path frequencies of a program. However, longer paths — those extending across loop iterations — describe the runtime behaviour of programs better. We generalize the Ball-Larus profiling algorithm for profiling k-iteration paths — paths that can span up to to k iterations of a loop. We show that it is possible to number such k-iteration paths perfectly, thus allowing for an efficient profiling algorithm for such longer paths. We also describe a scheme for mixed-mode profiling: profiling different parts of a procedure with different path lengths. Experimental results show that k-iteration profiling is realistic.