• DocumentCode
    1841327
  • Title

    Ultra-pipelining: an efficient software pipelining algorithm

  • Author

    Krishnamurthy, S.M.

  • Author_Institution
    Cray Research Superservers Inc., San Diego, CA, USA
  • fYear
    1993
  • fDate
    22-26 Feb. 1993
  • Firstpage
    586
  • Lastpage
    591
  • Abstract
    A compiler technique for utilizing instruction-level parallelism is presented. The software pipelining algorithm presented concentrates on innermost loops with array accesses dominating variable references. Dependence graphs labeled with either direction or distance information are provided as input to the pipelining algorithm. In the first step of the algorithm, a loop body of minimal schedule length is generated for a machine with infinite resources. This schedule is mapped onto a processor with finite resources in the next step. This division into two steps makes it possible to make use of existing algorithms for DAG scheduling to handle loop scheduling.<>
  • Keywords
    parallel programming; pipeline processing; program compilers; scheduling; DAG scheduling; array accesses; compiler technique; distance information; finite resources; infinite resources; innermost loops; instruction-level parallelism; loop body; loop scheduling; minimal schedule length; software pipelining algorithm; ultra-pipelining; variable references; Assembly; Data analysis; Pipeline processing; Processor scheduling; Registers; Resource management; Scheduling algorithm; Software algorithms; Supercomputers; Taxonomy;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Compcon Spring '93, Digest of Papers.
  • Conference_Location
    San Francisco, CA, USA
  • Print_ISBN
    0-8186-3400-6
  • Type

    conf

  • DOI
    10.1109/CMPCON.1993.289738
  • Filename
    289738