In this thesis, we proposed a new graph reduction model which is a parallel execution model of functional languages, and designed its parallel abstract machine. The model offers how to utilize the inherent parallelism provided by functional languages while not increasing interprocess communication overhead so much.
The designed abstract machine, called Parallel G-Machine, is an extended form of the G-Machine which is a sequential graph reduction machine for a functional language called LML, to multiprocessor system. The G-Machine is extended to support parallel execution by providing not only two new registers and message handler but also newly added instructions for parallel execution.
To reduce the communication overhead, maximum locality should be guaranteed on each processor. There are three methods possible under this model for solving the problem. The effect of each method on the execution time of functional program and the performance of Parallel G-Machine are analysed through simulation.