cancel
Showing results for 
Search instead for 
Did you mean: 

Background Jobs Using Extended Memory even though HEAP Quota is not reached...

Former Member
0 Kudos

Hi SCN Friends,

Version -

SAP_BASIS - 731, 0005

Kernel - 720, Level 300

OS - Linux GNU SLES-11 x86_64 cc4.3.4 use-pr120614

DB - ORACLE

In our Production System, we are observing that Background Jobs are using Extended Memory even when the Non-Dia Heap Quota is not reached.

Am puzzled as SAP says Non-Dia processes use, Roll, Heap and then Extended Memory.

Due to these Jobs occupying Extended Memory our Dialog Users are getting affected.

Please help in understanding why the Background Job is using Extended Memory even when Heap Quota is not reached.

Please let me know if you need any more details...

Accepted Solutions (0)

Answers (5)

Answers (5)

alexander_bolloni
Contributor
0 Kudos

Hi,

the only explanation for your question would be that the total heap memory was exausted (abap/heap_area_total) already, so the BTC that had 6 GB of heap had to continue using (5GB of) EM memory instead . Otherwise your assumptions are correct: a BTC process will draw from ABAP heap memory until it has reached the nondia quota. If you want to prevent this, you should probably raise the heap_area_total limit or try to run not so many memory-hungry batch jobs in parallel.

Regards,

  Alex

Former Member
0 Kudos

Hello Kaushik,

Normally this strategy of EM and heap memory consumption is guided by parameters ES/TABLE. In my opinion, if EM is getting used first for dialog and BGD processes both, this should be normal.

FIrst em/roll_extension will be used up and then if heaplimit is reached, WP can take up till heap_area_dia or non_dia depending if other WPs are already not comsuming heap.

Let me know if you have some other question, thanks.

Regars,

Ankit

Former Member
0 Kudos

hi kaushik., As of I know the background processes use only the roll and extended memory. heap is a private memory which is used by dialog work process.

Thanks

varma.

Former Member
0 Kudos

Hi SCN Friends,

Please share if you have any useful information on this...

Former Member
0 Kudos

Hi Kaushik,

Could not think of any best option other than suggesting you analyze memory consumption using SAT tool, You can refer following blog to get info on SAT:

Also see the jobs which are failing in prod are also failing in recently refreshed non-prod system too. This will give you idea if your prod RAM has any issues.

Check how much data failed jobs are dealing with.

Is this issue very often or once in a while?

Thanks,

Hardeep

Former Member
0 Kudos

Hi Hardeep,

It happens often...

Am analysing more on it,

Please share on in what circumstances BGD Jobs use extended Memory,

After Quota Exceeded, its obvious.

But is there any possibility that if a Program runs parallel processes or has a kind of Logic where data will be fetched from many areas and stored in the User Context for later processing.

Does this Use Extended Memory.

Former Member
0 Kudos

kaushik chavan wrote:

In our Production System, we are observing that Background Jobs are using Extended Memory even when the Non-Dia Heap Quota is not reached.

Can you share screenshots where you are observing this situation?

Former Member
0 Kudos

Hi Roman,

Please find the current parameters and the Memory Usage Screenshot below,

ztta/roll_area        6500000     Byte

ztta/roll_first       1           Byte

ztta/short_area       4000000     Byte

rdisp/ROLL_SHM        32768       8 kB

rdisp/PG_SHM          262144      8 kB

rdisp/PG_LOCAL        150         8 kB

em/initial_size_MB    55000       MB

em/blocksize_KB       4096        kB

em/address_space_MB   4096        MB

ztta/roll_extension   6000000000  Byte

abap/heap_area_dia    8000000000  Byte

abap/heap_area_nondia 12000000000 Byte

abap/heap_area_total  40000000000 Byte

abap/heaplimit        40000000    Byte

abap/use_paging       0

Sriram2009
Active Contributor
0 Kudos

Hi Kasushik

1. As per the SAP Note have you define the memory parameters?

941735 - SAP memory management for 64-bit Linux systems


1557506 - Linux paging improvements


2. When the BG job are running time what is the status over all system CPU & memory usage? during that time what is the status of Transaction ST02 ? if possible share the screen shot


3. If any Z development BG job program you have check with ABAPer and also you can enable the transaction ST12 check the over all the trace. refer the link

http://scn.sap.com/docs/DOC-44143



Regards

Sriram





Former Member
0 Kudos

What is the relationship between memory management in background work processes and screenshot you have attached? Can you explain a bit more?

Former Member
0 Kudos

Hi Roman,

We have abap/heap_area_nondia 12000000000 Byte, Heap Quota for Non-Dia Processes.

In that Screenshot,

First Background Job is Using 12 GB of Heap Memory and 13 GB of Extended Memory.

[It might have also Used the Extended Memory Even before reaching the Quota]

Second Job is Using 6 GB Heap memory which is less than the Quota allocated but has Used Extended Memory as well which deviates from the SAP Theory of Non-Dia uses Roll, Heap and then Extended Memory.

Former Member
0 Kudos

Hi Sriram,

1] Parameters are as per the recommendation and our current requirement. We have not faced any issue in that Regards.

2] Everything is fine, but sometimes when the Extended Memory is near to exhaust or exhausted due to Background Job using it in huge amount of Extended Memory without using the Heap Allocated creates High CPU Loads, Response Time Shoots up.

3] Even though we use Z program am not sure how can it use Extended Memory.

Former Member
0 Kudos

Apart from quota settings for amount of heap memory for non-dialog work processes, you need to account the total quota for amount of heap memory for all work processes (abap/heap_area_total). More likely you have exhausted this limit. In any way you need to make investigations why your background jobs require such high amount of memory and optimize them.

Former Member
0 Kudos

Hi Roman,

As mentioned earlier Heap Memory was free.

Lets keep the the BGD Jobs using high memory aside as we are working on it.

We can even restrict the Non-Dia EM usage by bringing in Quota Parameter ztta/roll_extension_nondia,

But we might face the Jobs failing if they are using the Extended Memory.

That's why I would like to know why the Non-Dia Processes are using Extended Memory even when Heap Memory is available....

Former Member
0 Kudos

> As mentioned earlier Heap Memory was free

> That's why I would like to know why the Non-Dia Processes are using Extended Memory even when Heap Memory is available

Can you explain a bit more how you evaluated the heap usage?

Former Member
0 Kudos

Hi Roman,

ST02 - Heap - Current Usage

Former Member
0 Kudos

Can you attach this screenshot?

Former Member
0 Kudos

Hi Roman,

I dont have Screenshot of that particular time, i have fetched one from right now Active.

Though its not high Memory Usage but you can see EM being Used same as Heap Memory in the below Screenshot.

Along with that, just want to understand,

If you can share in what circumstances Background Job uses EM will be useful.

Please let me know if you need more details.