NBUF NHBUF and MAXBUF tuning - SCO

This is a discussion on NBUF NHBUF and MAXBUF tuning - SCO ; On OSR506 platform with 4G memory, the mtune shows:NBUF 0 24 450000,that means the maximum value of NBUF is 450000,but if I give 1000000 to NBUF,when system starts,it give the following message: kernel: Hz = 100, i/o bufs = 467116k ...

+ Reply to Thread
Results 1 to 3 of 3

Thread: NBUF NHBUF and MAXBUF tuning

  1. NBUF NHBUF and MAXBUF tuning

    On OSR506 platform with 4G memory, the mtune shows:NBUF
    0 24 450000,that means the maximum value of NBUF is
    450000,but if I give 1000000 to NBUF,when system starts,it give the
    following message:

    kernel: Hz = 100, i/o bufs = 467116k (high bufs = 466092k)CONFIG:
    Buffer allocation was reduced (NBUF reduced to 467116)

    (1)That means NBUF gets a value of 467116, where does this number come
    from?

    ps:
    (2) If NBUF has a value other than zero, Is it ok to let NHBUF=0? Can
    NHBUF self-tune according to NBUF when NBUF is not set to zero?
    (3)When does MAXBUF have effect, when NBUF is zero or NBUF is not zero?

  2. Re: NBUF NHBUF and MAXBUF tuning

    On Apr 2, 1:26 am, yanna...@126.com wrote:
    > On OSR506 platform with 4G memory, the mtune shows:NBUF
    > 0 24 450000,that means the maximum value of NBUF is
    > 450000,but if I give 1000000 to NBUF,when system starts,it give the
    > following message:
    >
    > kernel: Hz = 100, i/o bufs = 467116k (high bufs = 466092k)CONFIG:
    > Buffer allocation was reduced (NBUF reduced to 467116)
    >
    > (1)That means NBUF gets a value of 467116, where does this number come
    > from?
    >
    > ps:
    > (2) If NBUF has a value other than zero, Is it ok to let NHBUF=0? Can
    > NHBUF self-tune according to NBUF when NBUF is not set to zero?
    > (3)When does MAXBUF have effect, when NBUF is zero or NBUF is not zero?


    On OSR5 the buffer memory maximum is about 450MB, hence the 467116K.

    First, have you checked sar -b to see what your %rcache and %wcache
    hits
    are. Never helps to fix a problem you do not have.

    This topic is fairly well documented, check out:

    http://osr507doc.sco.com/en/PERFORM/...fer_cache.html
    http://osr507doc.sco.com/en/PERFORM/mp_nhbuf.html

    You will find this information on NHBUF:

    If you set NHBUF to 0, the system configures the number of buffer
    cache hash queues automatically at startup. On a uniprocessor system,
    the system sets the number of hash queues to the nearest power of 2
    that is greater than or equal to half the value of NBUF. This should
    be treated as a recommended lower bound for NHBUF; you may find that
    setting NHBUF to a higher value gives better performance.

    NOTE: The value that you assign to NHBUF must be a power of 2; 512,
    1024, and 2048 are examples.

    On a multiprocessor system, the system sets the number of hash queues
    to the nearest power of 2 that is greater than or equal to twice the
    value of NBUF. The reason for this can be seen from ``Keeping the
    ratio of hash queues to buffers low reduces contention for SMP''. On a
    system with an SCO SMP License, the kernel running on one CPU locks
    the entire hash queue when it accesses a buffer. The kernel running on
    another CPU that wants to access the same hash queue must wait until
    it is released. Such contention can be avoided by keeping the ratio of
    hash queues to buffers low. For example, if the value of NBUF is 32000
    on a system with an SCO SMP License, you should set NHBUF to at least
    65536.


    Mike

  3. Re: NBUF NHBUF and MAXBUF tuning

    Many thanks, I see.

+ Reply to Thread