1753779 Members
7655 Online
108799 Solutions
New Discussion юеВ

buffer cache hits ratio

 
SOLVED
Go to solution
Alex Lavrov.
Honored Contributor

buffer cache hits ratio

Hello,

Another matter of performance. Currently, the buffer cache hi ratio on my system is 87%. Advised to have above 90%. I want to know, what are the ways to increase the ratio and should I do it or not because I use EMC storage and it has buffer cache of it's own.
I don't give a damn for a man that can only spell a word one way. (M. Twain)
4 REPLIES 4
Steven E. Protter
Exalted Contributor
Solution

Re: buffer cache hits ratio

I would not go nuts for that extra 3%.

This advice depends on a lot of factors, especially what kind of applications you run. Oracle for example has its own buffering system and having a large buffer cache for Oracle is essentially double buffering, and is a waste of resources.

Obviously, you can make your buffer larger by changing the kernal parameters. I'm not sure I'd go through the effort for the 3%.

A practical way to look at it is a few question:

1) Is the system peforming acceptably?

If yes, stop and find something more fun to do. If no, deal with the symptoms and analyze peformance in a methodical way.

SEP
Steven E Protter
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
Alex Lavrov.
Honored Contributor

Re: buffer cache hits ratio

That's what I thought, just wanted to be 100% sure.

For the general knowledge, what jernel parameters control buffer cache size?
I don't give a damn for a man that can only spell a word one way. (M. Twain)
Bill Hassell
Honored Contributor

Re: buffer cache hits ratio

The buffer cache is a long time feature in Unix systems, designed long before smart disk arrays with massive local cache in the array. The 90% value is reasonable for JBOD (just a bunch of disks) but when a separate cache exists in the hardware, the hit rate isn't nearly as important. The reason is that the hit ratio does not account for response time. If disk requests are handled instantaneously (ie, direct from the array's cache), there is no metric for that and the opsystem wil still cache this fast request the same as a real disk I/O.

The range for the buffer cache is from 250 megs to under 900 megs, the range being low for slow machines (100Mhz and slower) to high for fast machines (500Mhz and faster). The buffer cacahe is handle in two ways, a fixed value and a dynamic value based on a percentage of RAM. The fixed value is used by setting the kernel parameter bufpages to the number of pages (page=4k) for the cache. This isn't a bad idea because adding more memory won't change the buffer cache size.

The second method (default) is to use the dbc_max_pct and dbc_min_pct values. These values are ignoed if bufpages is not zero. When bufpages (and also the obscure nbuf parameter) is zero, then the amount of the buffer cache will float between the min and max value expressed as a percent of the current RAM size. For large memeory systems (many Gb), the percentage is too large and should be reduced. dbc_min_pct should always be 2 to 5 (lower for big RAM systems) and dbc_max_pct should produce a value of 250-900 megs.


Bill Hassell, sysadmin
Alex Lavrov.
Honored Contributor

Re: buffer cache hits ratio

big thanx
I don't give a damn for a man that can only spell a word one way. (M. Twain)