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
