cancel
Showing results for 
Search instead for 
Did you mean: 

Inconsistencies in ST06 memory displays

Former Member
0 Kudos


Dear tech gurus,

I'm not sure if this is a problem or not, but it's certainly a puzzle to me.

I'm seeing quite a big inconsistency between the memory utilisation as shown in the ST06 memory snapshot display and what's shown as used in the ST06 TOP CPU display.

For example, at the moment the ST06 memory snapshot for one of my application servers shows the following:

However, if I go into ST06's top CPU display and look at the resident memory sizes for the work processes, I can see this:

If I add up the ResidentSz (shown in KB) then I get a total of just over 50GB.

In short, therefore, TOP is showing 50GB used (just by the work processes) whereas the memory snapshot seems to be showing about 23GB used in total.

Is there something wrong with the way that ST06 (or top) reports memory utilisation for processes?

The app server is running Linux and is virtualised using VMware.

Thanks,

Kevin

Accepted Solutions (0)

Answers (5)

Answers (5)

Former Member
0 Kudos

Hi,

Thanks all for your suggestions. However, it seems that this behaviour is something specific to the way that Linux reports the resident size of a process. Linux does a lot of "clever" stuff with memory management (including having an addressable memory cache and performing copy-on-write for forked processes) which means that the resident size it reports is actually the sum of local process memory (heap memory in old terminology) and addressable shared memory from its cache or parent process.

In general, therefore, it's not particularly useful to use the resident size as a measure of how much RAM a process is consuming - it only shows how much RAM it's currently addressing, and some of this RAM will be the same as that being addressed by other processes.

There also seems to be a bit of an issue with the reporting of overall free memory using the free command. SAP Note 1382721 explains this.

Thanks,

Kevin

Sriram2009
Active Contributor
0 Kudos

Hi Kevin

Could you refer the SAP Note 1697515 - Inconsistencies in OS monitoring


BR

SS

IanSegobio
Advisor
Advisor
0 Kudos

Hello Sriram,

If at OS level the same values are reported, then there is nothing to do with OS monitoring.

Cheers,
Ian.

IanSegobio
Advisor
Advisor
0 Kudos


Hello Kevin,

The scenario that you describe may not be a problem at first. In order to test that hypothesis, please check the OS memory status with "free -m". Keep in mind the amount of free RAM in the server.

Once it's done, choose one of the work processes which seem to allocate memory in ST06 and restart it through SM50 transaction. After that, check again the output from "free -m" and evaluate whether that amount was released once again to the OS or whether there is no variation in the output of the command.

In case there is no variation, it just mean that the amount of memory you see attached to the work process in ST06 is just showing a previously state but is not really allocated anymore.

Cheers,
Ian.

alwina_enns
Employee
Employee
0 Kudos

Hello Kevin,

ST06 gets data from saposcol, and saposcol gets data from operating system. You need to check which value for memory do you see at each location. Please check the output of "saposcol -m", if you see the same data in this output like in ST06. After that please check, which values delivers OS (I'm not sure, which command should it be on Linux).

Regards,
Alwina

Former Member
0 Kudos

Hi Kevin,

Check to your OSCOL , it should be running.

Secondly get through the detail understanding of ST06

http://help.sap.com/saphelp_nw70/helpdata/en/02/962658538111d1891b0000e8322f96/content.htm

How to use SAP transaction ST06 for SAP performance analysis | SAP application performance

Hope it helps

Br Vaibhav