language: en

Modeling Communication in Parallel Algorithms: A Fruitful Interaction between Theory and Systems?

Jaswinder Pal Singh * , Edward Rothberg , and Anoop Gupta *
* Computer Systems Laboratory Intel Supercomputer Systems Stanford University
14924 NW Greenbrier Pkwy, CO6-09 Stanford, CA 94305 Beaverton, OR 97006

Abstract Recently, several theoretical models of parallel architectures have been proposed to replace the PRAM as the model that is presented to an algorithm designer. A primary focus of the new models is to include the cost of interprocessor communication, which is increasingly important in modern parallel architectures. We argue that modeling the communication costs in the architecture or system is only one part of the problem. The other, and usually much more difficult, part is modeling the communication properties of the algorithm itself, which provides necessary inputs into the architectural model to determine overall complexity. In this context, we make three main points in this paper: (i) It is incomplete to describe communication without regard to its relationship with replication. We propose a description of the communication-replication relationship in terms of the working set hierarchy of an algorithm. (ii) Both inherent communication and the communication-replication relationship can be very difficult to model in irregular, dynamic computations that are crucial in many real-world applications. We present some examples that demonstrate this difficulty. (iii) We believe that substantial leverage can be obtained in this effort from the computer systems community, which can provide a hierarchy of simulation and profiling toolsfrom abstract to detailedtailored to the needs of the algorithm designers. We propose an initial set of simulation tools, and we discuss possible future refinements to this set.

1 Introduction