system to be exceeded. Selection within scheduling priority siaply aeans that a executable virtual machine of high priority is always added
to the active subset (to a queue) before a executable virtual aachine of
lower priority. If the paging bias mechanisa is activated by setting
the paging bias factor to a nonzero value, scheduler selection is in
favor of smaller virtual machines; otherwise, selection is within
priority. Once the active subset (the set of in-queue virtual aachines)
has been selected, the dispatcher allocates resources of the processor aaong them. The list of executable virtual machines in a queue is sorted by dispatching (as opposed to scheduling) priority. The dispatching
priority is a running average of a given virtual aachine's processor time/wait-time ratio. Thus, virtual aachines who are most likely to go
into wait state, based on past performance, are dispatched ahead of
those whose demands on the processor are more extensive. This siaple
ratio priority is normally altered if a virtual machine is identified as
compute-bound by means of the fact that it has executed for at least 50 ms. without entering the wait state. In this case, it is placed at the bottom of the dispatchable list. On the other hand, virtual machines
identified as interactive by virtue of the frequency their requests for
terminal I/O are placed at the top of the dispatchable list. DHKDSP also provides a fast dispatch path for virtual machines that have
issued specific privileged instructions that are not handled by the
Virtual Machine Assist feature.
These virtual machines can be dispatched very rapidly because the
virtual aachine's program old PSi needs very little reconstruction to
redispatch the virtual machine, hence use of full PSi reconstruction
path is not required. The decision for using the fast dispatch path (DHKDSP1) is accoaplished by the module that handles privileged
operation, DMKPRV or DMKVIO. A fast redispatch path is also available
after I/O interrupts. If DMKDSP can determine that the I/O interrupt
processing had no effect on the running virtual machine's status and it
caused no higher-priority virtual machine to become runnable, then the
virtual PSi stored at the I/O old PSi location will be used to
redispatch the virtual machine. The CP supervisor runs disabled for all I/O and external interrupts.
The dispatcher, in order to alleviate part of this problea, will temporarily enable for interrupts and then disable. There are three
occasions when the dispatcher enables for interruptions (enable
windows):
1. ihen an enabled wait state is entered.
2. ihen an enabled problem state is entered to run a virtual machine. 3. ihen another part of the supervisor is entered via the unstacking
of a CP request block. On occasions 1 and 2, the dispatcher ignores the enable since the systea will soon be enabled for interruptions. On occasion 3, if the
dispatcher finds a CP request block to unstack, it first enables then
disables for interruptions before unstacking the request.
1-134 IBM VM/370 System Logic and Problem Deter.ination--Voluae 1
When the resources of the processor (and real storage) are being
allocated, the dispatching and scheduling functions are implemented in
such a manner that options exist which allow an installation to
designate that certain virtual machines are to receive preferential
treatment.
The favored execution options allow an installation to modify the
algorithms described above and force the system to devote more of its
resources to a given virtual machine than would ordinarily be the case.
The options provided are:
1. The favored execution 2. The favored execution percentage.
The favored execution option means that the virtual machine so
designated is never to be dropped from the active (in-queue) subset by the scheduler. When the virtual machine is executable, it is to be
placed in the dispatchable list at its normal priority position.
However, any active virtual machine represents either an explicit or implicit commitment of main storage. An explicit storage commitment can
be specified by either the virtual=real option or the reserved page
option. An implicit commitment exists if neither of these options are
specified, and the scheduler recomputes the virtual machine's projected
work-set at what it would normally have been at queue-drop time. Multiple virtual machines can have the basic favored execution option
set. However, if their combined main storage requirements exceed the syte.'s capacity, performance can suffer due to thrashing.
The basic favored execution option removes the primary source of
elapsed time stretch-out in a loaded time-sharing environment. However,
if the favored task is highly compute-bound and must compete for the
processor with many other tasks of the same type, an installation can
define the processor allocation to be made •. In this case, the favored
execution percentage option can be selected for the virtual machine.
This option specifies that the selected virtual machine, in addition to remaining in queue, receives a given minimum percentage of the total
processor time, if he can use it. The percentage is assured in the following Banner: i. 2. The in-queue tiae and added to the
usage.
slice is multiplied by the requested percentage
virtual machine's current total processor time When the favored virtual
placed at the top of the
his guarantee. machine, is dispatchable list until it
it is always
has obtained
3. If the virtual machine obtains its guarantee before the interval
has elapsed, it is placed in the dispatchable list according to its
caluculated dispatching priority. 4. In any case, at the end of the in-queue time slice, the gUdrantee
is recomputed as in step 1 and the process repeated.
These options
machines and only
any given time. can impact the response time of interactive virtual
one favored percentage virtual machine is allowed at
CP Introduction 1-135
Previous Page Next Page