From owner-freebsd-current@FreeBSD.ORG Fri Nov 28 17:13:17 2003 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B5D8C16A4CE for ; Fri, 28 Nov 2003 17:13:17 -0800 (PST) Received: from smtp02.syd.iprimus.net.au (smtp02.syd.iprimus.net.au [210.50.76.52]) by mx1.FreeBSD.org (Postfix) with ESMTP id D41C443FEA for ; Fri, 28 Nov 2003 17:13:09 -0800 (PST) (envelope-from tim@robbins.dropbear.id.au) Received: from robbins.dropbear.id.au (210.50.200.249) by smtp02.syd.iprimus.net.au (7.0.020) id 3F8F522A00F0EFF9; Sat, 29 Nov 2003 12:13:04 +1100 Received: by robbins.dropbear.id.au (Postfix, from userid 1000) id BFE8860FB; Sat, 29 Nov 2003 12:16:58 +1100 (EST) Date: Sat, 29 Nov 2003 12:16:58 +1100 From: Tim Robbins To: Dag-Erling Sm?rgrav Message-ID: <20031129011658.GA1347@wombat.robbins.dropbear.id.au> References: <20031127070239.GA12950@wombat.robbins.dropbear.id.au> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.1i cc: current@freebsd.org Subject: Re: Port of Niels Provos's file descriptor allocation code X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 29 Nov 2003 01:13:17 -0000 On Sat, Nov 29, 2003 at 01:32:01AM +0100, Dag-Erling Sm?rgrav wrote: > Tim Robbins writes: > > I've ported Niels Provos's file descriptor allocation code to FreeBSD > > in case anyone wants to try it out & run some benchmarks. If the performance > > boost turns out to be worth the added complexity, I might clean it up a > > bit and commit it. > > What exactly would be the point? If this is the OpenBSD fdalloc code, > recent widely-publicized benchmarks have shown it to be inferior to > ours. Perhaps you should concentrate on improving vm_map_find() and > vm_map_findspace() performance instead? It's also the NetBSD fdalloc code. They started with code similar to ours, in that it did a linear search of the file descriptor array to find an empty slot and used hints to speed up some common allocation patterns, then recently switched over to using the multi-level bitmap allocator. I can't think of any reason why we wouldn't see improvements similar to what they saw: http://www.citi.umich.edu/u/provos/benchmark/netbsd-fdalloc.jpg ... but I'm still working on benchmarking FreeBSD with & without the new allocator; I just posted the patch so that other people could experiment with it if they were interested. I don't plan on committing it until I have good evidence that it's an improvement over the current code. Tim