Title :
Compile-time partitioning of iterative parallel loops to reduce cache coherency traffic
Author :
Abraham, Santosh G. ; Hudak, David E.
Author_Institution :
Dept. of Electr. Eng. & Comput. Sci., Michigan Univ., Ann Arbor, MI, USA
fDate :
7/1/1991 12:00:00 AM
Abstract :
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
Keywords :
buffer storage; parallel machines; parallel programming; program compilers; ADP; adaptive data partitioning; array accesses; cache coherency traffic; cache line sizes; communication patterns; communication-reducing back end; global data set; hexagonal partitions; interprocessor communication; iterative parallel loops; machine-specific partitioner; multiprocessor model; parallel programs; parallelizing compilers; program execution factors; underlying system architecture; vector notation; Bandwidth; Computer architecture; Costs; Delay; Multiprocessing systems; Optimizing compilers; Parallel processing; Parallel programming; Program processors; Traffic control;
Journal_Title :
Parallel and Distributed Systems, IEEE Transactions on