Performance Guidelines General Information
The performance characteristics of an operating system, when it is run
in a virtual machine environment, are difficult to predict. This
unpredictability is a result of several factors: The System/370 model used. The total number of virtual machines executing. The type of work being done by each virtual machine. The speed, capacity, and number of the paging devices. The amount of real storage available. The degree of channel and control unit contention, as well as arm contention, affecting the paging device. The type and number of Vft/370 performance options in use by one or more virtual machines. I The degree of access to ftSS 3330V volume. Perforllance of any virtual machine may be improved up by the choice of hardware, operating system, and Vft/370 topics discussed in this section address:
to some limit options. The
1. The performance options available in V!/370 to improve the
performance of a ,particular virtual machine. 2. The system options and operational characteristics of operating systems running in virtual machines that will affect their
execution in the virtual machine environment. The performance of a specific virtual machine may never equal that of
the same operating system running standalone on the same System/370, but
the total throughput obtained in the virtual machine environment may equal or better that obtained on a real machine. When executing in a virtual machine, any function that cannot be performed wholly by the hardware causes some degree of degradation in
the virtual machine's performance. As the control program for the real machine, CP initially processes all real interrupts. A virtual machine operating system's instructions are always executed in 2roblem state.
Any privileged instruction issued by the virtual machine causes a real
privileged instruction exception interruption. The amount of work to be
done by CP to analyze and handle a virtual machine-initiated interrupt
depends upon the type and complexity of the interrupt.
The simulation effort required of CP may be trivial, as for a
supervisor call (SVC) interrupt (which is generally reflected back to
the virtual machine), or may be more complex, as in the case of a Start I/O (SIO) interrupt, which initiates extensive CP processing. When planning for the virtual machine environment, consideration
should be given to the number and type of privileged instructions to be
executed by the virtual machines. Any reduction in the number of
privileged instructions issued by the virtual machine's operating system will reduce the amount of extra work CP must do to support the machine. CP Introduction 1-25
Virtual Machine I/O To support I/O processing in a virtual machine, CP must translate all
virtual machine channel command word (CCW) sequences to refer to real
storage and real devices and, in the case of minidisks, real cylinders. When a virtual machine issues an SID, CP must: 1. Intercept the virtual machine SID interrupt. 2. Allocate real storage space to hold the real CCW list to be
created.
3. Translate the virtual device addresses referred to in the virtual CCWs to real addresses.
4. Page into real
operation, all
operation.
storage and lock, for the duration of the I/O virtual storage pages required to support the I/O 5. Generate a new CCW sequence building a Channel Indirect Data
Address list if the real storage locations cross page boundaries.
6. Schedule the I/O request.
7. Present the SID condition code to the virtual machine. 8. Intercept, retranslate, and present the channel end and device end
interrupts to the appropriate virtual machine, where they must then
be processed by the virtual machine operating system. CP's handling of SIOs for virtual machines can be one of the most significant causes of reduced performance in virtual machines.
The number of SID operations required by a virtual machine can be
significantly reduced in several ways: Use of large blocking factors (of up to 4096 bytes) for user data
sets to reduce the total number of SIOs needed. Use of preallocated data sets. Use of virtual machine operating system options (such as chained
scheduling in OS) that reduce the number of SIO instructions. substitution of a faster resource
operations, by building small temporary rather than using an I/O device.
(virtual storage) for I/O data sets in virtual storage
Frequently, there can be a performance gain when CP paging is
substituted for virtual machine I/O operations. The performance of an
operating system such as OS can be improved by specifying as resident as many frequently used os functions (transient subroutines, ISlft indexes,
and so forth) as are possible. In this way, paging I/O is substituted
for virtual machine-initiated I/O. In this case, the only work to be
done by CP is to place into real storage the page that contains the
desired routine or data.
1-26 IB8 V8/370 System Logic and Problem Determination--Volume 1
Previous Page Next Page