Sept. 21, 1999 to Sept. 24, 1999
Angeles G. Navarro , University de Malaga
Rafael Asenjo , University de Malaga
Emilio L. Zapata , University de Malaga
David Padua , University of Illinois at Urbana-Champaign
Most of today's multiprocessors have a Distributed-Shared Memory (DSM) organization, which enables scalability while retaining the convenience of the shared-memory programming paradigm. Data locality is crucial for performance in DSM machines, due to the difference in access times between local and remote memories.In this paper, we present a compile-time representation that captures the memory locality exhibited by a program in the form of a graph known as Locality-Communication Graph (LCG). In the LCG, each node represents a DO loop nest which can have at most one level of parallelism. Not all loops need to be represented within a node and, therefore, the LCG may contain cycles.Our representation works whether the loops represented by the nodes are perfectly nested or not, and the subscript expressions and loop limits can be affine or non-affine expressions of the loop indices. The LCG provides essential information that a parallelizing compiler can use to automatically choose a good iteration/data distribution and to schedule the communication operations required during program execution.
Parallelizing Compilers, Array Reference Descriptor, Data Locality Analysis, Locality-Communication Graph, Distributed-Shared Memory Systems
Angeles G. Navarro, Rafael Asenjo, Emilio L. Zapata, David Padua, "Access Descriptor based Locality Analysis for Distributed-Shared Memory Multiprocessors", ICPP, 1999, 2013 42nd International Conference on Parallel Processing, 2013 42nd International Conference on Parallel Processing 1999, pp. 86, doi:10.1109/ICPP.1999.797391