RMS Management Functions
The RMS scheduler allocates contiguous ranges of nodes with a given number of CPUs
per node 1. Where possible each resource request is met by allocating a single range of
nodes. If this is not possible, an unconstrained request (those that only specify the
number of CPUs required) may be satisfied by allocating CPUs on disjoint nodes. This
ensures that an unconstrained resource request can utilize all of the available CPUs.
The scheduler attempts to find free CPUs for each request. If this is not possible, the
request blocks until CPUs are available. RMS preempts programs when a higher priority
job is submitted, as shown in Figure 2.6. Initially, CPUs have been allocated for resource
requests 1 and 2. When the higher priorityresource request 3 is submitted, 1 and 2 are
suspended; 3 runs to completionafter which 1 and 2 are restarted.
Figure 2.6: Preemption of Low Priority Jobs
23104567
10 11
9812 13 14 15
Resource3
345
0120246
1357
Resource1 Resource2
345
0120246
1357
Resource1 Resource2
startjobs
suspendjobs
startjob
jobends
resumejobs
2.4.3 Access Control and Accounting
Users are allocated resources on a per-partition basis. Resources in this context include
both CPUs and memory.The system administrator can control access to resources both
at the individual user level and at the project level (where a project is a list of users).
This means that default access controls can be set up at the project leveland overridden
on an individual user basis as required. The access controls mechanism is described in
1The scheduler allocates contiguous ranges of nodes so that processes may take advantage of the Compaq
AlphaServer SC Interconnect hardware support for broadcast and barrier operations which operate over a
contiguousrange of network addresses.
Overview of RMS 2-9