1831253 Members
2780 Online
110022 Solutions
New Discussion

Re: buffer memory

 
M. Tariq Ayub
Regular Advisor

buffer memory

Hi,

I am looking into the glance. here i am seeing that buffer memory is occuoying a huge portion of physical ram. What is the use of that.
5 REPLIES 5
Michael Tully
Honored Contributor

Re: buffer memory

Not much I'm afraid. The ideal setting is between 300-400Mb of your total RAM no more. You need to reduce the 'dbc_max_pct' and 'dbc_min_pct' in your kernel. Here's how:

# cd /stand/build
# /usr/lbin/sysadm/system_prep -s system
# vi system
(make your changes, the number is to be a percentage)
e.g. 10 is 10 percent, save the file
# mk_kernel -s system
# kmupdate
# cd /
# shutdown -r -y now

You can always use SAM if your nor confident.
Anyone for a Mutiny ?
Robert-Jan Goossens
Honored Contributor

Re: buffer memory

Stefan Farrelly
Honored Contributor

Re: buffer memory

It depends what 'huge portion' means. If its of a size >400MB then its too large - its actually slowing down performance. But leaving it at around 3-400MB is fine as it caches i/o to disk which improves performance.

You can set it using dbc_min_pct and dbc_max_pct. eg, if your server has 2GB of RAM then set dbc_min_pct to say 10 (%) and dbc_max_pct to 20 (%) which will limit your cache to between 200-400MB which is fine. If you still run out of memory then reduce it even further - better for performance to have some memory free than a buffer cache of even 2-400MB !
Im from Palmerston North, New Zealand, but somehow ended up in London...
Massimo Bianchi
Honored Contributor

Re: buffer memory

Hi,
it is used for the caching of files.

It is mainly controlled by the

dbc_min_pct
and
dbc_max_pct

kernel parameters. They specify the % of RAM to use for buffering. Usually 400M must be enough.

For oracle installation
dbc_min_pct 2
dbc_max_pct 8


Check also kernel parameters
ninode
vx_ninode

rule of thumb should be vx_ninode=90%*ninode

and ninode not more than 4000.

These are cache for inodes in the kernel, and values of 0 can lead to memory leak.

Massimo
Fragon
Trusted Contributor

Re: buffer memory

Hi,
Another, to make "dbc_max_pct" & "dbc_min_pct" take effect(enable dynamic buffer cache), you should set the kernel parameters "bufpages" & "nbuf" to zero!

-ux