@inproceedings{2258d4fc4177433b91b8752a03e06ec6,
title = "Improving static branch prediction in a compiler",
abstract = "An ILP (Instruction-Level Parallelism) compiler uses aggressive optimizations to reduce a program's running time. These optimizations have been shown to be effective when profile information is available. Unfortunately, users are not always willing or able to profile their programs. A method of overcoming this issue is for an ILP compiler to statically infer the information normally obtained from profiling. This paper investigates one aspect of this inference: the static prediction of conditional-branch direction. The goals of this work are to utilize the source-level information available in a compiler when performing static branch prediction, to identify static-branch-prediction cases in which there is a high confidence that a branch will go in one direction at run time, to gain an intuitive understanding into the reasons why the static-branch-prediction heuristics are effective, and ultimately to improve the accuracy of the static branch prediction. The effectiveness of the static-branch-prediction heuristics developed in this paper is demonstrated on a set of programs from SPEC CINT92, SPEC CINT95, and the IMPACT compiler.",
author = "Deitrich, {Brian L.} and Chen, {Ben Chung} and Hwu, {Wen Mei W.}",
year = "1998",
month = jan,
day = "1",
doi = "10.1109/PACT.1998.727253",
language = "English (US)",
series = "Parallel Architectures and Compilation Techniques - Conference Proceedings, PACT",
publisher = "Institute of Electrical and Electronics Engineers Inc.",
pages = "214--221",
booktitle = "Proceedings - 1998 International Conference on Parallel Architectures and Compilation Techniques, PACT 1998",
address = "United States",
note = "1998 International Conference on Parallel Architectures and Compilation Techniques, PACT 1998 ; Conference date: 12-10-1998 Through 18-10-1998",
}