• DocumentCode
    2113010
  • Title

    Software pipelining: a comparison and improvement

  • Author

    Jones, Reese B. ; Allan, Vicki H.

  • Author_Institution
    Dept. of Comput. Sci., Utah State Univ., Logan, UT, USA
  • fYear
    1990
  • fDate
    27-29 Nov 1990
  • Firstpage
    46
  • Lastpage
    56
  • Abstract
    Software pipelining can significantly increase the execution rate of loops. Each of the four major software pipelining algorithms takes a different approach to software pipelining. This paper discusses each method and explores some of the similarities and differences among the methods. On loops consisting of a single basic block, the perfect pipelining algorithm is the only software pipelining algorithm that currently achieves time optimality, in the absence of resource constraints. A technique for unrolling the loop before pipelining is presented as an improvement to software pipelining, as it can allow Lam´s algorithm to achieve time optimality for these restricted loops. Unrolling has an advantage over perfect pipelining because it can reduce the code space required for the software pipeline
  • Keywords
    microprogramming; pipeline processing; software engineering; perfect pipelining algorithm; software pipelining; time optimality; unrolling; Computer science; Delay; Parallel processing; Pipeline processing; Software algorithms; Steady-state;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Microprogramming and Microarchitecture. Micro 23. Proceedings of the 23rd Annual Workshop and Symposium., Workshop on
  • Conference_Location
    Orlando, FL
  • Print_ISBN
    0-8186-2124-9
  • Type

    conf

  • DOI
    10.1109/MICRO.1990.151426
  • Filename
    151426