Trace selection for compiling large C application programs to microcode

Pohua P. Chang, Wen-Mei W Hwu

Research output: Contribution to journalConference article

Abstract

Microcode optimization techniques such as code scheduling and resource allocation can benefit significantly by reducing uncertainties in program control flow. A trace-selection algorithm with profiling information reduces the uncertainties in program control flow by identifying sequences of frequently invoked basic blocks as traces. These traces are treated as sequential codes for optimization purposes. For different trace-selection algorithms, the authors report the distribution of control transfers categorized according to their potential impact on the microcode optimizations. The experimental results are based on ten C application programs that exhibit large code sizes and complicated control structures. The measured data for each program were accumulated across a large number of input files to ensure the reliability of the result. All experiments were performed automatically using an IMPACT C compiler that contains integrated profiling and analysis tools.

Original languageEnglish (US)
Pages (from-to)21-29
Number of pages9
JournalMICRO: Annual Microprogramming Workshop
StatePublished - Dec 1 1988

    Fingerprint

ASJC Scopus subject areas

  • Engineering(all)

Cite this