MSO Resource Manager

The MSO Resource Manager is used by MSO to ensure that system resources are allocated appropriately among all of the tasks in the MSO address space. In addition to balancing the CPU allocated to each task, MRM allows assignment and control of the relative priorities of the FOCUS tasks in the region.

When MRM is active, the SSTIME task operates periodically (every 10 seconds or the value specified via the MRM_INTERVAL configuration keyword) and analyzes the tasks in the region. MVS's dispatcher, once it has selected the MSO address space, scans the TCB chain until it finds the first ready TCB, and gives it control. This means that tasks early in the TCB chain get more access to the CPU, and a CPU-bound (or looping) task can prevent other tasks from running. Within each MRM priority group, tasks compete with each other for CPU time. MRM looks at the tasks within a priority group, and if the top task is using a percentage of the CPU exceeding 50%, or the MRM_PERCENT value, the MRM changes the task's MVS priority to place it at the end of the group. In addition, totally inactive tasks, which consume no CPU and are in a wait, are given a very low background priority. This helps the MVS dispatcher by making the chain shorter for active users, and therefore getting them dispatched faster. When a "background" task becomes active again, it is reassigned its original priority.

There are 16 priority groups, 0 through 15, with 15 being the highest. The default priority for a user task is 7, unless it is changed as described below. Tasks in priority group 0 are suspended. They will not run until they are reassigned a higher priority.

MSO's internal tasks all run at priorities above 15. Their relative priorities, from highest to lowest are:

I/O and storage utilization are not factored into MRM decisions, which are based strictly on the amount of CPU being used.

MRM is activated when the following two conditions are met:

If both of these conditions are met, MSO issues the message

(MSO13370) SERVER RESOURCE MANAGER IS ACTIVE.

Each service block specified in the MSO configuration may contain a PRTYGROUP record, which assigns a priority to all users of that service. If not specified, PRTYGROUP defaults to 7. This priority may be displayed or changed by using the DU command in the MSO console (see The MSO Console). In addition, the priority may be changed from the MVS system console by using the MODIFY command (see MSO Operator Commands).

The primary purpose of MRM is improving throughput by balancing and controlling resource allocation. It is expected that most MSO sites will run all tasks at the default priority, and run multiple MSO regions, at different priorities when the workload requires, giving some tasks higher priorities than others.


Information Builders