Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Aug 2005 15:32:22 +0200
From:      des@des.no (=?iso-8859-1?q?Dag-Erling_Sm=F8rgrav?=)
To:        Alexey Dokuchaev <danfe@FreeBSD.org>
Cc:        arch@freebsd.org
Subject:   Re: fdesc allocation optimization
Message-ID:  <863bp25c7t.fsf@xps.des.no>
In-Reply-To: <20050822100059.GA24626@FreeBSD.org> (Alexey Dokuchaev's message of "Mon, 22 Aug 2005 10:00:59 %2B0000")
References:  <20050822100059.GA24626@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
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/>.

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

DES
--=20
Dag-Erling Sm=F8rgrav - des@des.no




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