Compaq SC RMS Server User Manual


 
What Happens When a Request is Received
processes (including those belonging to the system) will be killed if the system
runs out of swap space.
7.4.3 Time Slicing
Time slicing is enabled on a partition by setting its timeslice attribute; values of
15–120 seconds are recommended. If a timeslice is set, the Partition Manager
evaluates the list of requests periodically. The list of requests is still sorted by priority
but requests of the same priority are sorted on the number of time slices since they were
last scheduled (rather than the submission time). When the system has requests for
more CPUs than are available, the scheduler suspends requests at the end of each time
slice so that others can use the CPUs.
When setting up a system for time slicing, it is important to set memory limits that
ensure that all jobs remain resident in memory. System performance will be poor if time
slicing between large jobs causes paging. The ratio of memory limit to memory size
controls how many requests can progress concurrently. For example, on a node with 4
CPUs and 4GB of memory, setting a memory limit of 512MB will allow two jobs to be
time sliced without paging.
The scheduler processes resource requests as it receives them. It tries to fit new
requests to free CPUs. If no CPUs are available the request blocks, at least until the next
time slice.
7.4.4 Suspend and Resume
The allocation of CPUs to a request can be suspended using rcontrol. Doing this
reduces the CPU usage counts for the user and project, enabling other jobs to start.
Either the user or administrator can resume the allocation at a later time. To resume
the jobs, the CPUs are reallocated unless doing so would exceed a CPU usage limit. In
this case, the request is marked as blocked and CPUs will only be allocated and the
jobs restarted when sufficient CPUs become available. Note that requests that are
suspended by the administrator cannot be resumed by their owner.
7.4.5 Idle Time
The amount of time that the resources allocated to a request can remain idle can be
constrained by using rcontrol to set an idle timer (see also Section 10.2.3). By default,
no timer is set. If an idle timer is set, it starts timing as soon as the resource has been
allocated. It is stopped if the request is suspended and restarted when the request is
resumed. If the idle timeout expires the CPUs are deallocated.
7-6 RMS Scheduling