Plugging anti and output dependence removal techniques into loop parallelization algorithms
Résumé
In this paper we shortly survey some loop transformation techniques which break anti or output dependences, or artificial cycles involving such 'false' dependences. These false dependences are removed through the introduction of temporary buffer arrays. Next we show how to plug these techniques into loop parallelization algorithms (such as Allen and Kennedy's algorithm). The goal is to extract as many parallel loops as the intrinsic degree of parallelism of the nest authorizes, while avoiding a full memory expansion. We try to reduce the number of temporary arrays that we introduce, as well as their dimension.