IBM 1130 User Manual page 678

Computing system
Hide thumbs Also See for 1130:
Table of Contents

Advertisement

Section
Subsections
Page
90
40
I
10
06
Step 5
Since SUBYI as a LOCAL is slowing down the pro-
gram, we must try to keep
it
in core storage at all
times. However, the previous load map showed that
there are only four words unused by the package,
and SUBYI is 400 words long. If we could free up
396 words, SUBYI could be taken out of the LOCAL
category, and the program would be speeded up.
(Realize, of course, that SUBYI could easily be
made non-LOCAL, but that SOCALs would then be
required. The secret is to avoid both SOCALs and
a LOCAL SUBYl).
Note also that SOCALs would cause the program
to run even slower. Since the sequence of the
program is a repetition of
a.
I/o
b. DISK
c. ARITH, including SUBYI
d. DISK
e. ARITH
f.
I/O
SOCAL level 1 will cause the disk arm to be moved
between the data area and the overlay area between
steps
a and b
band c
c and d
d and e
while SUBYI as a LOCAL will require such a move-
ment only between steps
band c
c and d
After considerable study, we decide that there is
very little that can be done to further improve the
performance of this program, unless, of course, we
can reduce its size by 396-100 or 296 words (Flip-
per would no longer be required).
Because SUBYI handles the FICA calculation, it
will be called less and less as the year progresses,
since more employees will attain a "paid up" status.
(This won It be true, however, if your test for "paid-
up" is done inside the subroutine: It should be made
in the mainline program, otherwise SUBYI will be
called every time, whether the employee gets a deduc-
tion or not.)
Discussion of Case I
Here you have seen one way to fit this "typical"
program into core, at little or no sacrifice in
throughput. There may be other ways to do the same
thing; there may be better ways.
Basically, common sense is used -- a step-by-
step segmentation of the program, with each step
having a greater effect on performance:
1. Make LOCALs out of those subroutines that
are not always
called~
2.
Break the program into LINKs.

Advertisement

Table of Contents
loading

Table of Contents