The implementation and evaluation of parallel algorithms on c.mmp.

Abstract : This dissertation demonstrates the implementation and evaluation of parallel algorithms on C.mmp, a multiprocessor computer system. Initial attempts to demonstrate the performance of a simple parellel algorithm yielded unexpectedly large performance degradations from the theoretical calculations. This unexpected result spawned a study of the C.mmp system to discover and measure the major sources that perturbed the performance of the parallel algorithm. The performance study was conducted at several levels: basic hardware measurements; runtime performance of Hydra, C.mmp's operating system; and overall performance of a particular application: a parallel rootfinding algorithm. The results of this study identified six major sources of performance perturbation. The six sources, in order of importance, were: variations in the compute time to perform the repetitive calculation; memory contention caused by finite memory bandwidth; the operating system's scheduling processes can become a bottleneck; variations in the individual processor speeds; interrupts associated with I/O device service routines; and variations in the individual memory bank speeds.

[1]  Gordon Bell,et al.  C.mmp: a multi-mini-processor , 1972, AFIPS '72 (Fall, part II).

[2]  Jack L. Rosenfeld,et al.  Solution of the Dirichlet problem on a simulated parallel processing system , 1968, IFIP Congress.

[3]  Bruce T. Lowerre,et al.  The HARPY speech recognition system , 1976 .

[4]  H. T. Kung,et al.  Parallel Execution of a Sequence of tasks on a Asynchronous Multiprocessor , 1980, Aust. Comput. J..

[5]  H. T. Kung,et al.  Synchronized and asynchronous parallel algorithms for multiprocessors , 1976 .

[6]  Richard M. Karp,et al.  Parallel minimax search for a maximum , 1968 .

[7]  Allen Newell,et al.  Some issues in programming multi-mini-processors , 1975 .

[8]  Franklin S. Cooper,et al.  Speech Understanding Systems , 1976, Artificial Intelligence.

[9]  Douglass J. Wilde,et al.  Optimal Search for a Maximum with Sequences of Simultaneous Function Evaluations , 1966 .

[10]  A.K. Jones,et al.  Programming issues raised by a multiprocessor , 1978, Proceedings of the IEEE.

[11]  S.H. Fuller,et al.  Multi-microprocessors: An overview and working example , 1978, Proceedings of the IEEE.

[12]  H. T. Kung,et al.  Sorting on a mesh-connected parallel computer , 1977, CACM.

[13]  Samuel H. Fuller,et al.  Cm*: a modular, multi-microprocessor , 1977, AFIPS '77.

[14]  Gerard Maurice Baudet,et al.  The design and analysis of algorithms for asynchronous multiprocessors. , 1978 .

[15]  William A. Wulf,et al.  HYDRA , 1974, Commun. ACM.

[16]  D. Teichroew Tables of Expected Values of Order Statistics and Products of Order Statistics for Samples of Size Twenty and Less from the Normal Distribution , 1956 .

[17]  William A. Wulf,et al.  Policy/mechanism separation in Hydra , 1975, SOSP.

[18]  D. Heller A Survey of Parallel Algorithms in Numerical Linear Algebra. , 1978 .