Computer Science Department
School of Computer Science, Carnegie Mellon University
Automatic Distribution of Programs and Data in a Distributed Environment
Michael L. Kazar
May 1985 - Thesis
This thesis demonstrates that one can solve problems faster with a network of computers than with a single processor. Useful parallelism can be automatically detected in a distributed environment by translating programs into dataflow graphs, making their inherent parallelism explicit. Once a program has been expressed as a dataflow graph, simple heuristics can assign processors to various parts of the program, resulting in a collection of processors that perform the task faster than a single processor.
I analyze the expected performance of such a system, and then validate these results by simulating this system on two example problems: an assembler and a matrix multiplication package. The central result of this thesis is a design for a distributed system reducing the programmer effort required to realize a program's parallelism.