Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Jul 2001 14:08:22 -0700 (PDT)
From:      Julian Elischer <julian@elischer.org>
To:        Zhihui Zhang <zzhang@cs.binghamton.edu>
Cc:        Bosko Milekic <bmilekic@technokratis.com>, Terry Lambert <tlambert2@mindspring.com>, vishwanath pargaonkar <vishubp@yahoo.com>, freebsd-hackers@FreeBSD.ORG
Subject:   Re: cluster size
Message-ID:  <Pine.BSF.4.21.0107251404390.4973-100000@InterJet.elischer.org>
In-Reply-To: <Pine.SOL.4.21.0107251416550.21505-100000@opal>

next in thread | previous in thread | raw e-mail | index | archive | help
no.. it has to do with the fact that it would be unwise
to make a cluster > 1 page size since we have no guarantee that
all drivers could handle breaking up a DMA if a cluster spanned 2 
physical address ranges. (they can handle a chain of discontinuous
mbufs but may assume that a single mbuf will have physically
contiguous data. Now since we cannot span a page boundary,
we should fit in exacly to get as much room as possible
and since (pagesize/3) is too small, the next possibility is (pagesize/2).

If pagesize/3 was big enough, we might have used that..


On Wed, 25 Jul 2001, Zhihui Zhang wrote:

> 
> I see.  It has something to do with the power-of-two allocator we are
> using inside the kernel.
> 
> -Zhihui
> 
> On Wed, 25 Jul 2001, Bosko Milekic wrote:
> 
> > 
> > On Wed, Jul 25, 2001 at 01:51:51PM -0400, Zhihui Zhang wrote:
> > > 
> > > 
> > > On Tue, 24 Jul 2001, Terry Lambert wrote:
> > > 
> > > > Zhihui Zhang wrote:
> > > > > > Hi,
> > > > > > in freebsd can we change the cluster size from 2048
> > > > > > bytes.If yes how can we do that?
> > > > > > do we have to configure in some file?
> > > > > 
> > > > > You must be asking why the mbuf cluster size is chosen as 2048, right? It
> > > > > is probably a tradeoff between memory efficient and speed.
> > > > 
> > > > Ask yourselves:
> > > > 
> > > > 	"What is the minimum cluster size I would have to have
> > > > 	 to be able to contain the maximum MTU worth of data,
> > > > 	 yet remain an even multiple of sizeof(mbuf) -- 256
> > > > 	 bytes?"
> > > 
> > > A dumb question: why even not odd multiple?
> > > 
> > > -Zhihui
> > 
> > 	It actually has to do with the fact that 2K is the only size equal to
> > or greater than the maximum MTU worth of data that can be multiplied to a page
> > size without any leftover (in other words, page size modulo 2K is zero).
> > 
> > -- 
> >  Bosko Milekic
> >  bmilekic@technokratis.com
> > 
> > 
> > To Unsubscribe: send mail to majordomo@FreeBSD.org
> > with "unsubscribe freebsd-hackers" in the body of the message
> > 
> 
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message
> 


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0107251404390.4973-100000>