Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Aug 2005 15:40:39 +0200
From:      Andre Oppermann <andre@freebsd.org>
To:        Dag-Erling =?iso-8859-1?Q?Sm=F8rgrav?= <des@des.no>
Cc:        arch@freebsd.org, Alexey Dokuchaev <danfe@FreeBSD.org>
Subject:   Re: fdesc allocation optimization
Message-ID:  <4309D5D7.C7C76B5B@freebsd.org>
References:  <20050822100059.GA24626@FreeBSD.org> <863bp25c7t.fsf@xps.des.no>

next in thread | previous in thread | raw e-mail | index | archive | help
Dag-Erling Smørgrav wrote:
> 
> Alexey Dokuchaev <danfe@FreeBSD.org> writes:
> > i've been browsing some of dfbsd resources recently, and found this one
> > being pretty interesting:
> >
> > http://leaf.dragonflybsd.org/mailarchive/commits/2005-06/msg00526.html
> >
> > however, it seemingly did not get attention in our lists.  so i am
> > wondering if there are work/plans on porting hsu@'s work?  i remember
> > that at some point we adopted some openbsd-derived algorithm, but since
> > matt states that this is "far better algorithm then anything we or
> > freebsd thought up before", i figured it worth a look.
> 
> Bollocks.  Our current algorithm (which I wrote) is so fast you don't
> even notice it's there.  It's actually simpler than the OpenBSD code
> from which it was inspired, and in theory it should be slower, but I
> discovered that the overhead of the "better" algorithm was so high
> that it consistently lost to the simpler one for reasonable amounts of
> file descriptors (up to about 100,000 per process).
> 
> The source code for the microbenchmark I used, and selected graphs
> comparing my code to the previous implementation, are available at
> <URL:http://people.freebsd.org/~des/fdbench/>.

Wow, impressive!

> (the strange artifacts you see on the red graphs are the result of the
> file descriptor table overrunning the CPU cache)

When did you commit this?  Is it only in post 5.0 releases?

-- 
Andre



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