Parallelizing Iterative Loops with Conditional Branching

Gyungho Lee

Research output: Contribution to journalArticlepeer-review

3 Citations (Scopus)

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.

Original languageEnglish
Pages (from-to)185-189
Number of pages5
JournalIEEE Transactions on Parallel and Distributed Systems
Volume6
Issue number2
DOIs
Publication statusPublished - 1995 Feb
Externally publishedYes

Keywords

  • Automatic program restructuring
  • conditional cyclic loop
  • data dependence
  • linear mixed recurrence loop
  • parallel algorithm
  • postfix-IF loop

ASJC Scopus subject areas

  • Signal Processing
  • Hardware and Architecture
  • Computational Theory and Mathematics

Cite this