Mike and Arun,

I think the assumption here is that there is that there are no records in the 
second file (skip sequential) that are being accessed more than once by a 
foreign key from the first file. If that is the case, then I think it makes 
sense that a sorted copy of the first file using the same key as the 2nd file 
would make a single redundant file, and both can match/merged sequentially. I 
assume that the keys are different for each file, because if they are the same, 
then the program would have been written with both files processed sequentially 
in the first place.

However, let me cut to what I think the real problem may be, and that is that 
the 2nd file is over-buffered. The files have almost the same number of 
records, which means that one CI in the 2nd file probably has the only record 
accessed by foreign key from the first file. I suggest that you knock the BUFND 
value for the 2nd file down from 240 to just 2. At the moment you are reading 
30 CI for every skip-seq access, (more with zHPF), and probably just reading 
the first CI. It's a wild ass guess that all that buffer management, not to 
mention the connect time, are at the root of the CPU time you are trying to 
eliminate. The BUFND reduction follows my original recommendation to understand 
the ratio of 2nd file records accessed per record in the first file. You have 
SAS - read the records and analyze it.

        TEST.SYLFA4V.VTST.MEMBER.CLUSTER - BUFNI = 30, BUND=225. This file is 
accessed sequentially
        TEST.SYLFA4V.VTST.MEMBER.PREVDAY.CLUSTER BUFNI = 120, BUFND = 240. This 
file is accessed skip-sequentially.

FWIW the idea of using LSR for skip sequential access should probably be nixed 
if no record in the 2nd file is accessed more than once. All you will do is 
walk the buffer pool and never get a buffer hit. The near equal number of 
records supports the no-hit premise.

Ron

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf 
Of Mike Schwab
Sent: Saturday, January 6, 2018 9:54 AM
To: [email protected]
Subject: Re: [IBM-MAIN] VSAM Performance - CPU reduction

On Sat, Jan 6, 2018 at 11:32 AM, Arun Venkatratnam 
<[email protected]> wrote:
<deleted>
> Resp: Reading through the entire file by sequential access took 90 CPU 
> seconds while skip-sequential took nearly 230 CPU seconds.
>
Doing the skip sequential (read by key) requires accessing the index to find 
the next record.  Just skipping through non-matching records
is faster when you are reading a large subset of the records.   A sort
to match up the records to create an extract for further processing could be 
even faster.

--
Mike A Schwab, Springfield IL USA
Where do Forest Rangers go to get away from it all?

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

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

Reply via email to