EXPLORER: Supporting run-time parallelization of DOACROSS loops on general networks of workstations
Performing run-time parallelization on general networks of workstations (NOWs) without special hardware or system software supports is very difficult, especially for DOACROSS loops. Parallelizing DOACROSS loops at run time implies complex operations for dependence detection, data accesses, and computation scheduling, which is hard to do systematically and could induce a large amount of messages. With the high communication overhead on NOWs, there is hardly any performance gain for run-time parallelization of DOACROSS loops. This paper proposes a general methodology for run-time parallelization of DOACROSS loops on NOWs, The methodology is realized by a portable run-time environment called EXPLORER, which can be implemented entirely at the user level. EXPLORER hides the communication overhead as much as possible through multithreading - a facility supported in almost all workstations. Considerations involved in the design of EXPLORER and its general organization will be introduced. Preliminary performance of EXPLORER will be presented and discussed. Performance measured on an implementation of EXPLORER on eight DEC Alpha workstations connected through a 10-Mbps Ethernet shows that the computation to communication ratio plays an important role and the extent to which multithreading can hide the communication overhead is limited. Thus EXPLORER is more suitable for coarse-grain computations. (C) 2000 Elsevier Science B.V. All rights reserved.
run-time parallelization doacross loops networks of workstations multithreading