On 4 Jan 2016 07:26:22 -0800, in bit.listserv.ibm-main you wrote:

>Jerry Callen wrote:
>> I'm really looking to make this core as fast as possible.
>Mike Colishaw tells some funny stories about optimization initiatives on 
>software projects. Is it certain that the place 
>you are optimizing is your real bottleneck.

This brings to mind a run time reduction for a hog at a place where I
was contracting.  The initial request was to optimize a date routine
which was using 10 percent of the CPU.  I was able to cut the time
used by better than 50 percent measured by SMF records for runs of a
test harness which did in effect run a loop of NOOPs, run a loop of
calculations using the current method and run a loop of calculations
using my revised method.  My revision exposed a bug in the using
program that had to be fixed but it did virtually nothing to reduce
the overall run time, something I had warned the client about before
spending too much time on it.  Thus because of the measurements that I
was careful to take and the warning, I maintained credibility.  The
changes were not put into general production with other programs
because that would have required testing especially since the
revisions gave a consistent way of handling error conditions rather
than leaving random garbage.  

Later, I revisited the run and cut substantial time from it by
modifying the customer file VSAM read routine/write to save the
results of all reads and writes by record type and comparing the keys
of records to see if the record requested was in memory for the random
reads and comparing the entire record for writes to see if it had
already been written.  This saved over a million reads and a
substantial number of writes thus cutting both I-O time and CPU time
since the client was using a VSAM compression package.  Again because
of testing considerations, the revised subroutine was put in
production only for this program which was in the critical path where
it made a substantial difference in elapsed time.  I logged read and
write totals by record type to SYSOUT in the routine.

I also was able to substantially reduce the run times in general for
the application by making more aggressive use of BLSR than had
previously been done at the shop by measuring the reduction in EXCPs
in relation to overall number of reads and writes using SMF reports.

Clark Morris   

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to