Abstract
PRP, Parallel Recursive Procedures, is a high level system for coding parallel programs. Basically, it allows the user to take a sequential program using recursion, and be able to run in on several computers.
The system has a preprocessor that will rewrite parts of the user's code into code that the PRP system can distribute to other computers. The recursive method will then be executed in parallel on these
machines (workers). The workers will then return parts of the final answer, that an administrator in the system will use to determine the final answer for the recursive method. The system communicates over
the internet, and any computer running a worker-process can join an execution.
This thesis describes the system in detail, and how the existing implementation of it could be improved. The thesis has its focus on user-friendlyness. The initial system was very hard to set up right. The thesis discusses how to automize the setup of the system. One of the goals was to make it into a system that people find easy and powerful enough, so that they will actually try to use it. This is mainly achived by creating a graphical user interface, accumalating the neccasary data from the user through the GUI. Then, based
on the data, the new system will automaticly perform commands like preprocessing source code, compiling code, moving files et.c.
The thesis also discusses improvements to the system while it is running. The goal here is to do extensive monitoring of system data, and controlling parts of the execution. By showing the user details of the system during runtime, it is hoped that the user will find it more interesting. By observing the network, it is also easier to detect any errorous behavior in the system, which is good for debugging.