Loop striping: maximize parallelism for nested loops

  • Authors:
  • Chun Xue;Zili Shao;Meilin Liu;Meikang Qiu;Edwin H. -M. Sha

  • Affiliations:
  • University of Texas at Dallas, Richardson, Texas;Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong;University of Texas at Dallas, Richardson, Texas;University of Texas at Dallas, Richardson, Texas;University of Texas at Dallas, Richardson, Texas

  • Venue:
  • EUC'06 Proceedings of the 2006 international conference on Embedded and Ubiquitous Computing
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

The majority of scientific and Digital Signal Processing (DSP) applications are recursive or iterative. Transformation techniques are generally applied to increase parallelism for these nested loops. Most of the existing loop transformation techniques either can not achieve maximum parallelism, or can achieve maximum parallelism but with complicated loop bounds and loop indexes calculations. This paper proposes a new technique, loop striping, that can maximize parallelism while maintaining the original row-wise execution sequence with minimum overhead. Loop striping groups iterations into stripes, where a stripe is a group of iterations in which all iterations are independent and can be executed in parallel. Theorems and efficient algorithms are proposed for loop striping transformations. The experimental results show that loop striping always achieves better iteration period than software pipelining and loop unfolding, improving average iteration period by 50% and 54% respectively