IBM System/370 145 Manual page 102

Hide thumbs Also See for System/370 145:
Table of Contents

Advertisement

92
• Use the PL/I Optimizing Compiler available for DOS and OS instead of
OS PL/I F or DOS PL/I D.
The code produced by these language
translators has characteristics that makes it more suited to a
virtual storage environment than the code produced by Type I PL/I
language translators.
First, generated code is grouped into
functionally related segments, by PROCEDURE and DO group, for
example, which can help reduce paging.
When PL/I allocates buffers
and I/O control blocks, they are packed together and can potentially
require fewer pages than if no attempt was made to define them
together.
Reentrant code can be produced by the OS PL/I Optimizing
Compiler, and its library routines are reentrant.
This reduces
page-out requirements.
User~written
reentrant PL/I routines that
are required by concurrently executing problem programs can be made
resident in virtual storage and shared to reduce real storage and
paging requirements for active pages of these routines.
• Use the shared library feature of the OS PL/I Optimizing Compiler
and the COBOL Library Management Facility of the OS and DOS ANS
COBOL language translators to make library modules resident in
virtual storage so they can
be
shared by concurrently executing
problem programs.
Pages containing active library modules will tend
to remain in real storage and thereby reduce paging and real storage
requirements for these modules.
• Restructure existing application programs to incur as few page
faults as possible, to use the least amount of real storage, and to
take advantage of" the program structure facilities that a virtual
storage environment offers.
This can be accomplished by (1) using
the techniques described above, (2) taking planned overlay and
dynamic structure programs out of these structures,
a~d
(3)
combining into one logical job step two or more steps of a job that
would have been one job step if the required real storage were
available.
The last of these techniques can eliminate redundant I/O
time that is currently used"for such things as reading the same
sequential input data into two or more job steps and writing
intermediate results from one job step in one or more sequential
data sets for input to the next job step.
• Increase the level of multiprogramming in the system.
This can be
accomplished by (1) performing more peripheral I/O operations
concurrently (more readers and writers in OS, use of POWER in DOS),
(2) operating more regions or partitions concurrently, or (3)
increasing the use of multitasking (structuring a DOS/VS QTAM or
OS/VS TCAM message processing program to use multitasking to enable
several different types of transactions to be processed
concurrently, for example).
System throughput can be improved in a virtual storage environemnt
if a higher level of multiprogramming causes more CPU and I/O time
to be overlapped and results in more effective utilization of system
resources.
The larger the number of tasks in the system under these
conditions, the less chance there is for the CPU to enter the wait
state because no task is ready to execute.
Better utilization of
real storage in a virtual storage environment can enable more tasks
to be present in the system.
In order to achieve performance gains by increasing the level of
multiprogramming, the potential for more overlap of CPU and I/O time
must exist in a system, and/or the potential must exist for a
reduction of I/O time via increased overlapping of channel activity
and reductions in unoverlapped seek time (that can result from new
system performance enhancements).
The required hardware resources,
such as CPU time, real storage, I/O devices, and direct access
storage, must be available as well.
The most critical resource in
this situation is available CPU time.
As the percentage of CPU
A Guide to the IBM System/370 Model 145

Advertisement

Table of Contents
loading

Table of Contents