• DocumentCode
    296676
  • Title

    Improving software pipelining with unroll-and-jam

  • Author

    Carr, Steve ; Ding, Chen ; Sweany, Philip

  • Author_Institution
    Dept. of Comput. Sci., Michigan Technol. Univ., Houghton, MI, USA
  • Volume
    1
  • fYear
    1996
  • fDate
    3-6 Jan 1996
  • Firstpage
    183
  • Abstract
    To take advantage of recent architectural improvements in microprocessors, advanced compiler optimizations such as software pipelining have been developed. Unfortunately, not all loops have enough parallelism in the innermost loop body to take advantage of all of the resources a machine provides. Unroll-and-jam is a transformation that can be used to increase the amount of parallelism in the innermost loop body by making better use of resources and limiting the effects of recurrences. We demonstrate how unroll-and-jam can significantly improve the initiation interval in a software-pipelined loop. Improvements in the initiation interval of greater than 40% are common, while dramatic improvements of a factor of 5 are possible
  • Keywords
    optimising compilers; parallel programming; parallelising compilers; pipeline processing; program control structures; compiler optimizations; initiation interval; innermost loop body; microprocessors; software pipelining; software-pipelined loop; unroll-and-jam; Computer architecture; Computer industry; Computer science; Microprocessors; Optimizing compilers; Parallel processing; Pipeline processing; Programming environments; Rockets; Software performance;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    System Sciences, 1996., Proceedings of the Twenty-Ninth Hawaii International Conference on ,
  • Conference_Location
    Wailea, HI
  • Print_ISBN
    0-8186-7324-9
  • Type

    conf

  • DOI
    10.1109/HICSS.1996.495462
  • Filename
    495462