Parallelizing Iterative Loops with Conditional Branching

  • Authors:
  • Gyungho Lee

  • Affiliations:
  • -

  • Venue:
  • IEEE Transactions on Parallel and Distributed Systems
  • Year:
  • 1995

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper considers automatic restructuring of loops with conditional branching for parallel processing, especially a class of loops termed 驴conditional cyclic loops.驴 A conditional cyclic loop possesses a dependence cycle caused by conditional branching across loop iterations, which makes it difficult to parallelize. In general, parallel execution of a conditional cyclic loop provides little benefit due to the need of solving a full-order nonlinear Boolean recurrence relation. However, the Boolean recurrence in practice is often of simpler forms. With the simpler forms, the number of possible predicate values of conditional branching is reduced drastically compared to a general conditional cyclic loop. These simple forms of conditional cyclic loops found in practice can be parallelized for $O(p/\log p)$ speedup with $p$ processors.Index Terms驴Automatic program restructuring, conditional cyclic loop, data dependence, linear mixed recurrence loop, parallel algorithm, postfix-IF loop.