Issue No. 03 - July (1991 vol. 2)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/71.86107
<p>Adaptive data partitioning (ADP) which reduces the execution time of parallel programs by reducing interprocessor communication for iterative parallel loops is discussed. It is shown that ADP can be integrated into a communication-reducing back end for existing parallelizing compilers or as part of a machine-specific partitioner for parallel programs. A multiprocessor model to analyze program execution factors that lead to interprocessor communication and a model for the iterative parallel loop to quantify communication patterns within a program are defined. A vector notation is chosen to quantify communication across a global data set. Communication parameters are computed by examining the indexes of array accesses and are adjusted to reflect the underlying system architecture by compensating for cache line sizes. These values are used to generate rectangular and hexagonal partitions that reduce interprocessor communication.</p>
Index Termsadaptive data partitioning; iterative parallel loops; cache coherency traffic; parallelprograms; interprocessor communication; ADP; communication-reducing back end;parallelizing compilers; machine-specific partitioner; multiprocessor model; programexecution factors; communication patterns; vector notation; global data set; arrayaccesses; underlying system architecture; cache line sizes; hexagonal partitions;interprocessor communication; buffer storage; parallel machines; parallel programming;program compilers
S. Abraham and D. Hudak, "Compile-Time Partitioning of Iterative Parallel Loops to Reduce Cache Coherency Traffic," in IEEE Transactions on Parallel & Distributed Systems, vol. 2, no. , pp. 318-328, 1991.