Validation of Rice Parallel Processing Testbed applications
Covington, Richard Glenn
Jump, J. Robert
Doctor of Philosophy
The Rice Parallel Processing Testbed (RPPT) is a collection of software tools for simulating the interaction of parallel programs and parallel architectures. The testbed uses a novel technique called execution-driven simulation, whereby the pseudo-concurrent execution of a parallel algorithm, augmented by profiling code, is used to drive the discrete-event simulation of a parallel architecture. This technique is intermediate between the high accuracy and low computational efficiency of instruction-level simulations and the less accurate but high efficiency statistical distribution-driven simulations, effectively combining attractive features of both of these techniques. The technique provides estimates of overall execution time, as well as more detailed performance indices such as communication vs. computation time, message passing traffic, and processor utilization. The methodology and implementation of the testbed are discussed at length and are compared with recently published related projects. The implementation has been a collective effort involving several people, and the author's contribution to the effort is outlined. Testbed predictions are given for a set of parallel numerical algorithms--LU decomposition, eigenvalue-eigenvector determination, FFT--simulated for a hypercube, and the predictions are validated against measurement of actual program execution on an Intel iPSC 16-node hypercube.