• DocumentCode
    2300135
  • Title

    Improving static branch prediction in a compiler

  • Author

    Deitrich, Brian L. ; Ben Chung Chen ; Hwu, Wen-Mei W.

  • Author_Institution
    Comput. Syst. Res. Lab., Motorola Inc., Schaumburg, IL, USA
  • fYear
    1998
  • fDate
    12-18 Oct 1998
  • Firstpage
    214
  • Lastpage
    221
  • 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
  • Keywords
    parallel languages; program compilers; ILP compiler; conditional-branch direction; static prediction; static-branch-prediction; Computer languages; Computer science; Concurrent computing; Laboratories; Optimizing compilers; Performance analysis; Performance gain; Program processors;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Architectures and Compilation Techniques, 1998. Proceedings. 1998 International Conference on
  • Conference_Location
    Paris
  • ISSN
    1089-795X
  • Print_ISBN
    0-8186-8591-3
  • Type

    conf

  • DOI
    10.1109/PACT.1998.727253
  • Filename
    727253