× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



If you are reading through all records in a file, you are probably
already specifying BLOCK(*YES) on the f-spec (this usually happens by
default, IIRC).  But you might also override the file to increase the
block size.  I usually issue the override as follows:

OVRDBF FILE(LMEMBR4) SEQONLY(*YES 5957)

I  base the number of records using the following formula:

(128000/RecLength)

This fills up the 128K buffer with records on each read, rather than
sticking to the default buffer size (4K?  8K?).  This will help if the
job is running in a subsystem that has adequate memory, and few enough
jobs so that there are minimum page faults in the pool.

On Tue, 1 Mar 2005 15:49:18 +0530, Dwarakanath, Srikanth (Cognizant)
<Srikanth.Dwarakanath@xxxxxxxxxxxxx> wrote:
> I have following scenario.
> 
> Control program reads through a control file (control file has list of 
> transactions to be processed) and calls programs as below:
> CREATE_TRAN_INFO -> this program writes record in CREATE_TRAN_INFO phy. file 
> per transaction
> CREATE_CASH_INFO -> this program writes record in CREATE_CASH_INFO phy. file 
> per transaction
> CREATE_COLLAERAL_INFO -> this program writes record in CREATE_COLLAERAL_INFO 
> phy. file per transaction
> (Lets call these as work programs)
> If all work programs run successfully, control program flags transaction as 
> processed and commits.
> 
> This is taking about 20 min. to process around 40,000 transactions. I need to 
> reduce this by 40% to meet SLA specified. Can I get some ideas on how best 
> can this be achieved.
> 
> I could think of creating IN and OUT data queues for each work program. Take 
> them out (from inline call) to a separate job that runs in batch. Control 
> program feeds these programs through IN data queue and picks the processed 
> part from OUT and also writes to the respective phy. file.
> I am of the opinion that there would be too many dynamic calls to QSNDDTAQ 
> and QRCVDTAQ, not sure if the objective would be achieved.
> Just for note, all work programs can run independently at the same time.
> 
> Any help is greatly appreciated.
> 
> Best rgds.,
> Srikanth D
> 
> 
> --
> This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list
> To post a message email: RPG400-L@xxxxxxxxxxxx
> To subscribe, unsubscribe, or change list options,
> visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
> or email: RPG400-L-request@xxxxxxxxxxxx
> Before posting, please take a moment to review the archives
> at http://archive.midrange.com/rpg400-l.
> 
> 
> 
> 


-- 
"Enter any 11-digit prime number to continue..."

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.