1748180 Members
4405 Online
108759 Solutions
New Discussion юеВ

Memory consumption

 
AVV
Super Advisor

Memory consumption

Hi All,

I am working on an 11.23 server with 10G of ram. Oracle application is running in this.Almost 100% memory is being used by application now and the application team is asking to give them a break up of each process that is utilizing the memory so that either it could be tuned or will go for a memory upgradation. Is there any tool or option to find the same. glance and gpm is there in the system.

Thanks
8 REPLIES 8
Michal Kapalka (mikap)
Honored Contributor

Re: Memory consumption

hi,

if you are using oracle on your box, and see the memmory usage almost 100%, them you have some choices :

1, find out, what the oracle DB and the OS ( check the kernel parameter s ) is doing, ( we are using the "Spotlight" ), and try to tune your DB.

http://www.toadworld.com/ORACLE/SpotlightonOracle/tabid/301/Default.aspx

2, ugrade the memmosty into your server.

mikap
Berd
Trusted Contributor

Re: Memory consumption

Hi AW,

Glance will allow you list process in order of memory usage. If you navigate to the Process List window, you can then configure to sort on memory usage.

HTH

Berd
mvpel
Trusted Contributor

Re: Memory consumption

The "top" command shows the virtual memory size of the running processes.

The "SZ" column in the "ps -ale" output is the size in pages of a process, and if you do this:

ps -ale | tr -s ' ' | sort -n -k10

Then the processes found on the bottom of the list will have the largest memory footprint. Bear in mind, though, that this will be counting shared memory multiple times - for instance I have a list of processes which all show a size of 9152 pages, but most of that is the shared executable image. It should be enough to get you in the ballpark.

You may also want to check your kernel settings - is your dbc_max_pct set to the default of 50, for example, allowing the system to use up to half of your 10G memory for disk buffer cache? Considering that Oracle does a lot of wizardry with the disk subsystem, as I recall, the OS buffer cache may be redundant at best or detrimental to performance. An Oracle expert would have to speak to that.

How much swap space do you have configured? Any process which allocates memory in HP-UX 11 must be able to reserve an equal amount of either device or pseudo swap space. Pseudo swap allows up to 7/8 of the system memory to be counted towards the swap reservation, so that's up to 8.75GB of memory. If you don't have at least 1.25GB of disk swap space configured, processes won't be able to allocate all of the physical memory on the box.

If your users are serious about tuning things, they should consider splashing out the cash for a copy of Glance, too. The system tools are okay for dilettante tuning, but Glance is professional-grade, and unfortunately it's priced that way. A 32-CPU license list price is $58,000.

HP should probably realign its per-cpu pricing in an era of thousand-core computer systems... PRM for a 32-processor, 256-core Integrity Superdome 2 would be $232,000 - yikes. Though I suppose once you get done writing a check for the Superdome, what's another quarter-mil, really?
Hakki Aydin Ucar
Honored Contributor

Re: Memory consumption

Hi,

recommendations are good; glance is good choice to monitor memory usage, and also you can use ps -ale good size monitoring,
in addition maybe, you can use lsof tool to monitor memory utility in a specific appliciation bny putting address like this:

# lsof /opt/path_to_oracle_applications

and also kmeminfo will be used to memory utility but you need to ask an assistance of local HP since this tool is restricted now.
djoshi
Frequent Advisor

Re: Memory consumption

My suggestion,

Is the memory utilization is 100% always? if yes, First try to find why the memory utilization is 100% instead of thinking to upgrade.

Secondly check the oracle database and application logs, OS system logs to troubleshoot this.
Pramod M
Regular Advisor

Re: Memory consumption

I am also seeking for a solution for a same issue.
I tried to list the process using the command which I got from one forum link,
UNIX95= ps -eafo user,time,pid,vsz,args | sort -rk 4 and it gves me an output like shown below.
root 10:54:02 1861 298512 /opt/OV/lbin/perf/coda
orauat 09:09 9953 123200 ora_dbw0_UAT
oradev 00:36 26409 123200 ora_dbw0_TMFMSDEV
orauat 11:34 12162 119872 oracleUAT (LOCAL=NO)
orauat 07:11 687 119872 oracleUAT (LOCAL=NO)
orauat 05:27 12038 119872 oracleUAT (LOCAL=NO)
orauat 05:27 11981 119872 oracleUAT (LOCAL=NO)
orauat 05:26 12035 119872 oracleUAT (LOCAL=NO)
orauat 05:25 11997 119872 oracleUAT (LOCAL=NO)
orauat 05:20 12032 119872 oracleUAT (LOCAL=NO)

I believes the forth column is showing the memory usage. But is in Kb ? Is it the virtual memory usage?
Also I can see that dbc_min_pct and dbc_max_pct value are 5. Is it causing any issues?

Thanks..
Pramod
chris huys_4
Honored Contributor

Re: Memory consumption

Hi,

kmeminfo is still the best tool to check for memory consumption.

f.e.

# kmeminfo
tool: kmeminfo 9.03 - libp4 9.344 - libhpux 1.234 - HP CONFIDENTIAL
core: /dev/kmem live
link: Fri May 16 16:22:55 MET 2008
boot: Tue Dec 23 08:18:49 2008
time: Tue Feb 10 11:58:46 2009
[..]
Physical memory = 4186529 16.0g 100%
Free memory = 15729 61.4m 0%
User processes = 1949827 7.4g 47% details with -user
System = 1471684 5.6g 35%
Kernel = 1471246 5.6g 35% kernel text and data
[..]
UFC file mrg = 689107 2.6g 16%

# kmeminfo -user
List sorted by physical size, in pages/bytes:

virtual physical swap
pid ppid pages / bytes pages / bytes pages / bytes command
13921 13919 2002936 7.6g 134311 524.7m 216367 845.2m oracle
14402 14401 1912792 7.3g 85918 335.6m 125840 491.6m oracle
10367 1 2146286 8.2g 85648 334.6m 106451 415.8m oracle
2029 1 369703 1.4g 37577 146.8m 87162 340.5m java
12910 1 2101214 8.0g 35168 137.4m 61205 239.1m oracle
6534 6531 753788 2.9g 30117 117.6m 99594 389.0m java
2031 1 366302 1.4g 25568 99.9m 88706 346.5m java
13364 1 2088925 8.0g 22730 88.8m 48800 190.6m oracle
12109 12053 1814472 6.9g 17576 68.7m 26930 105.2m oracle
16448 16011 1810376 6.9g 16127 63.0m 22813 89.1m oracle
25034 24976 1810376 6.9g 15009 58.6m 22817 89.1m oracle
6624 1 2064350 7.9g 14354 56.1m 24104 94.2m oracle
13021 12932 1814472 6.9g 14159 55.3m 26998 105.5m oracle
6758 1 2064350 7.9g 14005 54.7m 24105 94.2m oracle
9534 9473 1810376 6.9g 13094 51.1m 22797 89.1m oracle
12928 1 2068446 7.9g 10963 42.8m 28278 110.5m oracle
9657 1 2060254 7.9g 10796 42.2m 20348 79.5m oracle
[..]
20107 14393 18 72.0k 16 64.0k 19 76.0k ftp
physical swap
pages / bytes pages / bytes
Total: 1828790 7.0g 4143441 15.8g

The "html" "formatting" of the above "kmeminfo -user" output does unjustice to the above output.

But "kmeminfo" output shows that user processes "consume" in the above example 7.4g of physical ram. And the kmeminfo -user output, will show exactly how this 7g, there was a small difference in time between the taking of the kmeminfo and kmeminfo -user output I suppose, of physical ram is "spread" over all user processes. (in this case, the top 3 oracle processes take resp. 524.7m, 335.6m and 334.6m of physical ram)

However thats in this case not the problem, as the kernel takes 5.6gig of the 16g of total physical ram and buffercache, ufc file mrg, it is a 11.31 example, another 2.6g. In this case a gigabyte of ram was saved for the userprocesses, by decreasing buffercache to take max 10% of physical ram.

So, if you allready not have kmeminfo, open a hp support call and get it send to you.

Greetz,
Chris
AVV
Super Advisor

Re: Memory consumption

Thnaks