Abstract
Edge profiling is a very common means for providing feedback on program behavior that can be used statically by an optimizer to produce highly optimized binaries. However collecting full edge profile carries a significant runtime overhead. This overhead creates addition problems for real-time applications, as it may prevent the system from meeting runtime deadlines and thus alter its behavior. In this paper we show how a low overhead sampling technique can be used to collect inaccurate profile which is later used to approximate the full edge profile using a novel technique based on the Minimum Cost Circulation Problem. The outcome is a machine independent profile gathering scheme that creates a slowdown of only 2%-3% during the training set, and produces an optimized binary which is only 0.6% less than a fully optimized one.
Original language | English |
---|---|
Pages (from-to) | 291-304 |
Number of pages | 14 |
Journal | Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) |
Volume | 4917 LNCS |
DOIs | |
State | Published - 2008 |
Event | 3rd International Conference on High Performance Embedded Architectures and Compilers, HiPEAC 2008 - Goteborg, Sweden Duration: 27 Jan 2008 → 29 Jan 2008 |
Keywords
- Circulations
- Control flow
- Flow network
- Profiling
- Real-time
- Sampling
ASJC Scopus subject areas
- Theoretical Computer Science
- General Computer Science