Hi Paul

you need to have a look at what is happening on those processes; memory is
always handy but it is better to make sure that will solve the problem
you are looking at.
Just throwing more memory at the job may not help if (for example) the
problem is an SQL selection that needs an index.

So again, think about what those batch processes are doing or the resources
they need.
I had better results with SETOBJACC when I pinned a small-ish control table
in memory that was accessed by every program on the system.

If you already have a lot of memory, then purchasing more may have little
to no effect on the process.
I have tested this myself by moving memory around between LPARs to see if I
could improve batch run times - some jobs don't change in the least.

Some other questions worth thinking about:
Are your disks actually showing a lot of activity during the processing you
are trying to optimize ?
Are there any interesting waits being reported in the performance collector
?
What is temporary storage doing during the period in question ?
Is the query optimizer recommending any indexes ?


On Sun, Apr 8, 2018 at 11:18 AM, Steinmetz, Paul <PSteinmetz@xxxxxxxxxx>
wrote:

There are several longer running batch processes, some run multiple times
per day, that I was hoping to possibly reduce run times.
Overall, our performance is good.

The other factor was doing some tests, if extra memory was available, how
much this might improve run times.
I'm looking at various P9 configs, either 2x or 4x current memory.

Paul

-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of
Evan Harris
Sent: Saturday, April 07, 2018 6:42 PM
To: Midrange Systems Technical Discussion
Subject: Re: Memory pool , object question

Hi Paul

Just what kind of process are you trying to improve ?
- A batch process where the whole table is read
- Random access for any given process to the table
- A particular batch job processing a selection of records

What you are trying to do will have some bearing on the optimization
approach.



On Sun, Apr 8, 2018 at 8:01 AM, Steinmetz, Paul <PSteinmetz@xxxxxxxxxx>
wrote:

Completed the next test.
Chain using record number, starting with last record, 400,000,000,
ending with the first record, 1.

90 minutes.

With SETOBJACC
SETOBJACC OBJ(PAULS/CCEKCPP) OBJTYPE(*FILE) POOL(*SHRPOOL1) 46877104K
of CCEKCPP brought to pool with 10732K unused.
72 minutes, savings of 18 minutes.

I expected a larger savings.
This was on a Production LPAR, somewhat idle.
Any thoughts from the group?

Paul


-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of
Charles Wilt
Sent: Friday, April 06, 2018 5:57 PM
To: Midrange Systems Technical Discussion
Subject: Re: Memory pool , object question

An even that's probably not really a valid test...

Likely that many of the blocks will remain in memory...unless you're
testing on a box with a production workload so that data is likly to
be paged out...

Charles



On Fri, Apr 6, 2018 at 1:53 PM, Steinmetz, Paul
<PSteinmetz@xxxxxxxxxx>
wrote:

Charles,

That is my next test, work in progress.
RPGLE.

Paul

-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf
Of Charles Wilt
Sent: Friday, April 06, 2018 3:50 PM
To: Midrange Systems Technical Discussion
Subject: Re: Memory pool , object question

Not really a valid test...

Assuming RPG RLA with an input file...RPG will buffer data..

If using SQL, the Db will asynchronously bring in the data...


Change your program to do 400M random reads.

Charles



On Fri, Apr 6, 2018 at 1:32 PM, Steinmetz, Paul
<PSteinmetz@xxxxxxxxxx>
wrote:

Jim,

Do you have any time savings of your use of SETOBJACC?

I created a 400,000,000 record test file.
Created a simple test program, read the file, beginning to end.
14 minutes to read all 400,000,000 million records.

SETOBJACC OBJ(PAULS/CCEKCPP) OBJTYPE(*FILE) POOL(*SHRPOOL1)
46877104K of CCEKCPP brought to pool with 25441484K unused.

Reran the same test program.
11 minutes to read 400,000,000 million records.

SETOBJACC OBJ(PAULS/CCEKCPP) OBJTYPE(*FILE) POOL(*PURGE) Member
CCEKCPP purged from main storage.

Paul

-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On
Behalf Of Jim Oberholtzer
Sent: Friday, April 06, 2018 1:59 PM
To: 'Midrange Systems Technical Discussion'
Subject: RE: Memory pool , object question

SETOBJACC has some limitations as well.

IF the object is truly read only such as a program or data area it
will stay
in memory. But if the object is updated, such as a file or data
queue,
then the system will force it to DASD at some point and it will
fall out of that pinned memory.

I will always use a shared pool like *SHRPOOL60 and start working
back from there since those are really rarely used. No work in
those pools except the objects that are pinned in there.



-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On
Behalf Of Vernon Hamberg
Sent: Friday, April 06, 2018 12:51 PM
To: Midrange Systems Technical Discussion
<midrange-l@xxxxxxxxxxxx>
Subject: Re: Memory pool , object question

Paul

I would not put anything into *BASE using SETOBJACC - the article
I cited says these should go into a pool where there is no work, a
fixed pool, that will not be affected by any optimization - you
want
it static.

It is not just data that is paged in and out of a pool - it is
also *PGM objects - and potentially almost anything else jobs work
with.
*BASE would be the place where almost everything will get paged
out of main memory eventually and maybe not before too long a time.

Also be sure not to over-manage this stuff - see that article,
again, for what makes good candidates for this technique.

Cheers
Vern

On 4/6/2018 10:18 AM, Steinmetz, Paul wrote:
-snip-
I feel I can improve the performance of some long running batch
jobs.
Some
of these run multiple times per day.
What's the solution?
SETOBJACC, Keep in memory (KEEPINMEM), combination of both.

I'm considering the use of SETOBJACC, especially once the P9
arrives with
ample memory.
SETOBJACC needs to point to a storage pool.
The objects being considered for SETOBJACC might be used by both
interactive (*INTERACTIVE) and batch (*SHRPOOL1) My thoughts
were run
everything out of *BASE, SETOBJACC would point to *BASE.
-snip-
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please
take a moment to review the archives at
https://archive.midrange.com/
midrange-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link:
http://amzn.to/2dEadiD

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please
take a moment to review the archives at
https://archive.midrange.com/
midrange-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: http://amzn.to/2dEadiD
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please
take a moment to review the archives at
https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: http://amzn.to/2dEadiD

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please
take a moment to review the archives at
https://archive.midrange.com/
midrange-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: http://amzn.to/2dEadiD
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please
take a moment to review the archives at
https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: http://amzn.to/2dEadiD

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take
a moment to review the archives at https://archive.midrange.com/
midrange-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: http://amzn.to/2dEadiD
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take
a moment to review the archives at
https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: http://amzn.to/2dEadiD




--

Regards
Evan Harris
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: http://amzn.to/2dEadiD
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: http://amzn.to/2dEadiD





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.