NPAC Technical Report SCCS-667
Communication Strategies for Out-of-core Programs on Distributed Memory Machines
Rajesh Bordawekar, Alok Choudhary
Submitted December 4 1994
Abstract
In this paper, we show that communication in the out-of-core distributed
memory problems requires both inter-processor communication and file I/O.
Thus, it is important to optimize the I/O costs associated
with a communication step.
We present three methods for performing communication in out-of-core
distributed memory problems. The first method, termed as the "out-of-core"
communication method, follows a loosely synchronous model. Computation and
Communication phases in this case are clearly separated, and communication
requires permutation of data in files. The second method, termed as
"demand-driven-in-core communication" considers only communication required
of each in-core data slab individually. The third method, termed as
"producer-driven-in-core communication" goes even one step further and
tries to identify the potential (future) use of data while it is in
memory. We describe these methods in detail and provide performance results
for out-of-core applications; namely, two-dimensional FFT and
two-dimensional elliptic solver. Finally, we discuss how "out-of-core" and
"in-core" communication methods could be used in virtual memory
environments on distributed memory machines.