Title :
An implementation of OpenMP compiler for PC clusters based on array section descriptor
Author :
Yonezawa, Naoki ; Wada, Koichi
Author_Institution :
Dept. of Information & Comput. Sci., Kanagawa Univ., Japan
Abstract :
In this paper, we propose an implementation of OpenMP compiler for distributed memory environment While OpenMP provides a notion of shared address space, distributed memory environment does not have a physical shared memory. One of the approaches to implement OpenMP on distributed memory environment is communication code generation, in which a producer sends appropriate data to the consumer. Our compiler finds accesses to shared data and represents them by using quad, which is our proposed array section descriptor. To identify data to be sent, intersection operation is performed between quads representing written and read data. Since a quad can concisely represent stride accesses to an array section, our compiler can generate efficient code in the case which OpenMP directive divides a for-loop in block-cyclic manner. As a preliminary evaluation, we parallelized a matrix-multiply program by inserting an OpenMP directive and executed it on a PC cluster. In result, we achieved a speedup of 7.82 with 8 processors.
Keywords :
distributed shared memory systems; open systems; parallel programming; program compilers; workstation clusters; OpenMP compiler; PC cluster; array section descriptor; block-cyclic manner; communication code generation; distributed memory; intersection operation; matrix-multiply program; quad; shared address space; Computer science; Libraries; Multiprocessing systems; Parallel processing; Parallel programming; Phased arrays; Shape; Telephony; Yarn;
Conference_Titel :
Communications, Computers and signal Processing, 2003. PACRIM. 2003 IEEE Pacific Rim Conference on
Print_ISBN :
0-7803-7978-0
DOI :
10.1109/PACRIM.2003.1235704