Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Jan 2004 13:32:16 +0300 (MSK)
From:      Maxim Konovalov <maxim@macomnet.ru>
To:        CHOI Junho <cjh@kr.FreeBSD.org>
Cc:        freebsd-performance@freebsd.org
Subject:   Re: mbuf tuning
Message-ID:  <20040119132741.O42397@news1.macomnet.ru>
In-Reply-To: <20040119.192257.34695172.cjh@kr.FreeBSD.org>
References:  <20040119.153452.10362034.cjh@kr.FreeBSD.org> <20040119.192257.34695172.cjh@kr.FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 19 Jan 2004, 19:22+0900, CHOI Junho wrote:

> From: Mike Silbersack <silby@silby.com>
> Subject: Re: mbuf tuning
> Date: Mon, 19 Jan 2004 01:12:08 -0600 (CST)
>
> > There are no good guidelines other than "don't set it too high."  Andre
> > and I have talked about some ideas on how to make mbuf usage more dynamic,
> > I think that he has something in the works.  But at present, once you hit
> > the wall, that's it.
> >
> > One way to reduce mbuf cluster usage is to use sendfile where possible.
> > Data sent via sendfile does not use mbuf clusters, and is more memory
> > efficient.  If you run 5.2 or above, it's *much* more memory efficient,
> > due to change Alan Cox recently made.  Apache 2 will use sendfile by
> > default, so if you're running apache 1, that may be one reason for an
> > upgrade.
>
> I am using custom version of thttpd. It allocates mmap() first(builtin
> method of thttpd), and it try to use sendfile() if mmap() fails(out of
> mmap memory). It really works good in normal status but the problem is
> that sendfile buffer is also easy to flood. I need more sendfile
> buffers but I don't know how to increase sendfile buffers either(I
> think it's hidden sysctl but it was more difficult to tune than
> nmbclusters). With higher traffic, thttpd sometimes stuck at "sfbufa"
> status when I run top(I guess it's "sendfile buffer allocation"
> status).

man 2 sendfile, man 7 tuning are a good start.

In 5.2 you can monitor sendfile buffers usage via kern.ipc.nsfbufs*
sysctls or netstat(1).

[...]
-- 
Maxim Konovalov, maxim@macomnet.ru, maxim@FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040119132741.O42397>