• DocumentCode
    1025424
  • Title

    Exploiting the parallelism available in loops

  • Author

    Lilja, David J.

  • Author_Institution
    Dept. of Electr. Eng., Minnesota Univ., Minneapolis, MN, USA
  • Volume
    27
  • Issue
    2
  • fYear
    1994
  • Firstpage
    13
  • Lastpage
    26
  • Abstract
    Because a loop´s body often executes many times, loops provide a rich opportunity for exploiting parallelism. This article explains scheduling techniques and compares results on different architectures. Since parallel architectures differ in synchronization overhead, instruction scheduling constraints, memory latencies, and implementation details, determining the best approach for exploiting parallelism can be difficult. To indicate their performance potential, this article surveys several architectures and compilation techniques using a common notation and consistent terminology. First we develop the critical dependence ratio to determine a loop´s maximum possible parallelism, given infinite hardware. Then we look at specific architectures and techniques. Loops can provide a large portion of the parallelism available in an application program, since the iterations of a loop may be executed many times. To exploit this parallelism, however, one must look beyond a single basic block or a single iteration for independent operations. The choice of technique depends on the underlying architecture of the parallel machine and the characteristics of each individual loop.<>
  • Keywords
    parallel architectures; parallel programming; program compilers; scheduling; compilation techniques; critical dependence ratio; instruction scheduling constraints; loops; memory latencies; parallel architectures; parallelism; scheduling techniques; synchronization overhead; Computer architecture; Concurrent computing; Hardware; Parallel processing; Pipeline processing; Processor scheduling; Runtime; System performance; Turning; VLIW;
  • fLanguage
    English
  • Journal_Title
    Computer
  • Publisher
    ieee
  • ISSN
    0018-9162
  • Type

    jour

  • DOI
    10.1109/2.261915
  • Filename
    261915