ACM Home Page
Please provide us with feedback. Feedback
Static branch frequency and program profile analysis
Full text PdfPdf (1.26 MB)
Source International Symposium on Microarchitecture archive
Proceedings of the 27th annual international symposium on Microarchitecture table of contents
San Jose, California, United States
Pages: 1 - 11  
Year of Publication: 1994
ISBN:0-89791-707-3
Authors
Youfeng Wu  Sequent Computer Systems, Inc., D2-798, 15450 S.W. Koll Parkway, Beaverton, OR
James R. Larus  Computer Sciences Department, University of Wisconsin-Madison, 1210 West Dayton St., Madison, WI
Sponsors
IEEE-CS\TCMM : TC on Microprocessors & Microcomputers
SIGMICRO: ACM Special Interest Group on Microarchitectural Research and Processing
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 47,   Citation Count: 22
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues   peer to peer  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/192724.192725
What is a DOI?

ABSTRACT

Program profiles identify frequently executed portions of a program, which are the places at which optimizations offer programmers and compilers the greatest benefit. Compilers, however, infrequently exploit program profiles, because profiling a program requires a programmer to instrument and run the program. An attractive alternative is for the compiler to statically estimate program profiles. This paper presents several new techniques for static branch prediction and profiling. The first technique combines multiple predictions of a branch's outcome into a prediction of the probability that the branch is taken. Another technique uses these predictions to estimate the relative execution frequency (i.e., profile) of basic blocks and control-flow edges within a procedure. A third algorithm uses local frequency estimates to predict the global frequency of calls, procedure invocations, and basic block and control-flow edge executions. Experiments on the SPEC92 integer benchmarks and Unix applications show that the frequently executed blocks, edges, and functions identified by our techniques closely match those in a dynamic profile.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

Ball-92
Ball-93
 
Chang-91
 
Chen-92
 
Fisher-81
Fisher, Joseph A, "Trace Scheduling' A Technique for Global Microcode Compaction." IEEE Trans. Computera, C-30, 7 (July, 1981) pp. 478-490.
Fisher-92
 
Forman-81
 
Graham-83
Graham, S.L, P.B. Kessler, and M.K. McKusick, "An Execution Profiler for Modular Programs," Software-Practice and Experience, 13 (1983) pp. 671-685.
Hall-92
 
Hank-93
Hicky-88
Huelsbergen-94
Hwu-89
McFarling-89
Pettis-90
Ramamoorthy-65
Sarkar-89
 
Shafer-76
Shafer, G., A Mathematwal Theory of Evidence. Princeton University Press, 1976.
 
Spec92
SPEC Cint92, Release V 1.1
Wagner-94
Wall-91
Wu-92

CITED BY  22
 
 
 
 
 
 
 
 
 
 

Collaborative Colleagues:
Youfeng Wu: colleagues
James R. Larus: colleagues

Peer to Peer - Readers of this Article have also read: