cancel
Showing results for 
Search instead for 
Did you mean: 

Memory 100%

R.O.
Esteemed Contributor

Memory 100%

Hi,

I have a system with a memory usage of 100%. It has 1024Mb of RAM and I am wondering if the buffer cache is too high:

From glance:

Total VM : 432.9mb Sys Mem : 389.1mb User Mem: 395.3mb Phys Mem: 1024mb
Active VM: 307.0mb Buf Cache: 217.2mb Free Mem: 22.4mb

Parameters:

NAME VALUE BOOT MIN-MAX UNITS FLAGS
dbc_max_pct 50 - - -
dbc_min_pct 5 - - -
bufpages 55600 - 0- Pages -
nbuf 57630 - 0- -

Sar:

14:00:27 bread/s lread/s %rcache bwrit/s lwrit/s %wcache pread/s pwrit/s
14:00:30 5 3941 100 4 2921 100 0 0
14:00:33 97 2823 97 40 2095 98 0 0
14:00:36 8 3132 100 12 2376 99 0 0

Average 36 3300 99 19 2465 99 0 0

I do not see page outs in vmstat, so I do not know if this is a normal usage of memory due to the application (oracle database) or not. It is a R390 running HP-UX 11.11.

Regards,
"When you look into an abyss, the abyss also looks into you"
5 REPLIES
R.O.
Esteemed Contributor

Re: Memory 100%

From kmeminfo:

Physical memory = 262144 1.0g 100%
Free memory = 3305 12.9m 1%
User processes = 99718 389.5m 38% details with -user
System = 158508 619.2m 60%
Kernel = 102908 402.0m 39% kernel text and data
Dynamic Arenas = 48056 187.7m 18% details with -arena
M_TEMP = 38160 149.1m 15%
M_SPINLOCK = 1994 7.8m 1%
KMEM_ALLOC = 1245 4.9m 0%
M_SWAP = 1052 4.1m 0%
ALLOCB_MBLK_LM = 772 3.0m 0%
Other arenas = 4833 18.9m 2% details with -arena
Super page pool = 25471 99.5m 10% details with -kas
Static Tables = 23424 91.5m 9% details with -static
nbuf = 9040 35.3m 3% bufcache headers
inode = 502 2.0m 0%
ncache = 325 1.3m 0%
file = 156 624.0k 0%
bufmap = 128 512.0k 0% bufmap->bm_bitmap
Other tables = 13272 51.8m 5% details with -static
Buffer cache = 55600 217.2m 21% details with -bufcache
"When you look into an abyss, the abyss also looks into you"
TTr
Honored Contributor

Re: Memory 100%

Normally the buffer cache gets chipped away (pun?) and used in other system areas as needed. Does your server swap? What is the output of "swapinfo -tam"?
With 1GB memory, I would set the buffer cache min/max to 2/5, (but no more than 10% max).
R.O.
Esteemed Contributor

Re: Memory 100%

Hi,

No problems seen with swap:

Mb Mb Mb PCT START/ Mb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 2048 157 1891 8% 0 - 1 /dev/vg00/lvol2
reserve - 251 -251
memory 726 640 86 88%
total 2774 1048 1726 38% - 0 -

The buffer cache is defined by bufpages/nbuf (217 Mb)

Regards,
"When you look into an abyss, the abyss also looks into you"
TTr
Honored Contributor

Re: Memory 100%

So you are using static buffer cache allocation so the dbc_max_pct and dbc_min_pct are ignored.

http://docs.hp.com/en/TKP-90202/ch05s02.html

There is 157MB of memory on the swap disk. If that is active you will have i/o issues but it could be mostly idle swap and is there is no i/o impact.

You can check if there are any running processes that can be cleaned up to conserve memory and reduce the amount of buffer cache. With 1GB of memory, buffer cache should be in the 50 -100 MB range. So adjust the nbuf, bufpages values accordingly or enable dynamic buffer cache.

Also check the disk i/o for the swap volume in glance. (hit v in the main glance screen)
Tim Nelson
Honored Contributor

Re: Memory 100%

Here is what you have.

402MB is kernel
217MB is current buffer space (20% of 1GB)

leaves you with about 400MB for applications


The buffer cache is will dwindle down to 5% (50MB) as other processes need the RAM. If you do not like to see 90%+ of ram usage you can, and I would, reduce the dbc_max_pct down to maybe 10%(100MB) or less.

This is a DB server then take the max and min down to 3% and 2% respectivly and give the mem to the SGA.

There are some options to tweak down some other kernel defaults, e.g. ninode, vx_ninode, that will get you a little here and a little there.

But honestly a 1GB system to run an Oracle DB is pretty skimpy.. ( the OS takes up 3/4 of that anyway ).

some good tuning info is here.. http://docs.hp.com/en/7779/commonMisconfig.pdf