SCHEDULE: a hypercube implementation
Adam Beguelin · 1988
SCHEDULE, a tool for developing portable parallel Fortran programs, was converted for use on the Ncube hypercube. Developed at Argonne National Laboratory by Dongarra and Sorensen, SCHEDULE was originally intended for a shared memory system such as the Alliant FX/8 and the Cray-2. This work extends the utility of SCHEDULE by developing a version that runs on a local memory parallel processor, the Ncube hypercube. A master/slave (host/processing array) execution model is the foundation of the hypercube SCHEDULE implementation. The host maintains a queue of processes to be run on the hypercube. Processes, which are Fortran subroutines, are automatically scheduled on the individual processors by analyzing a user supplied dependency graph for the subroutines. The host initiates all of the processes running on the nodes and services requests from the nodes. Node processes may spawn other processes but only by requesting spawns from the host.