The Prospero Resource Manager

In the Prospero Resource Manager, resource management functions are distributed across three types of managers: The system manager controls access to a collection of processing resources and allocates them to jobs as requested by job managers. Large systems may employ multiple system managers, each managing a subset of resources. The job manager is the principal entity through which a job acquires processing resources to execute its tasks. The job manager acquires processor nodes from one or more system managers and initiates tasks on these nodes through the node manager. If necessary, it also initiates dedicated tasks to handle terminal and file I/O from the user tasks. A node manager runs on each processor in the PRM environment. It initiates and monitors tasks on the node on which it is running.

Advantages of PRM


Job execution by the Prospero Resource Manager

  1. User starts up a job manager on local workstation. Job manager identifies the resource requirements of job, requests them from one or more system managers.

  2. System manager allocates resources to job manager, authorizes job manager to use node managers.

  3. Job manager requests node managers to spawn tasks on the nodes; starts terminal and file I/O tasks locally.

  4. Tasks execute on the nodes, communicate with each other and perform terminal and file I/O.


Additional Information

The following paper describes the goals and working of PRM in greater detail.

B. Clifford Neuman and Santosh Rao, The Prospero Resource Manager: A Scalable Framework for Processor Allocation in Distributed Systems, Concurrency: Practice and Experience, 6(4): 339-355, June 1994. postscript

PRM software Version 1.1 is now available. See here for details.

Go to PRM Home Page.