From owner-freebsd-hackers@FreeBSD.ORG Fri Mar 25 17:38:13 2005 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8E90416A4CE for ; Fri, 25 Mar 2005 17:38:13 +0000 (GMT) Received: from mail25.sea5.speakeasy.net (mail25.sea5.speakeasy.net [69.17.117.27]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3CF9143D31 for ; Fri, 25 Mar 2005 17:38:13 +0000 (GMT) (envelope-from jmg@hydrogen.funkthat.com) Received: (qmail 836 invoked from network); 25 Mar 2005 17:38:11 -0000 Received: from gate.funkthat.com (HELO hydrogen.funkthat.com) ([69.17.45.168]) (envelope-sender ) by mail25.sea5.speakeasy.net (qmail-ldap-1.03) with SMTP for ; 25 Mar 2005 17:38:09 -0000 Received: from hydrogen.funkthat.com (tgbshk@localhost.funkthat.com [127.0.0.1])j2PHc9GH008656; Fri, 25 Mar 2005 09:38:09 -0800 (PST) (envelope-from jmg@hydrogen.funkthat.com) Received: (from jmg@localhost) by hydrogen.funkthat.com (8.12.10/8.12.10/Submit) id j2PHc8N4008655; Fri, 25 Mar 2005 09:38:08 -0800 (PST) Date: Fri, 25 Mar 2005 09:38:08 -0800 From: John-Mark Gurney To: Andriy Tkachuk Message-ID: <20050325173808.GS37984@funkthat.com> Mail-Followup-To: Andriy Tkachuk , freebsd-hackers@freebsd.org References: <006401c53128$e6c6d390$090210ac@BORJA> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <006401c53128$e6c6d390$090210ac@BORJA> User-Agent: Mutt/1.4.1i X-Operating-System: FreeBSD 4.2-RELEASE i386 X-PGP-Fingerprint: B7 EC EF F8 AE ED A7 31 96 7A 22 B3 D8 56 36 F4 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html cc: freebsd-hackers@freebsd.org Subject: Re: contributing to fbsd X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: John-Mark Gurney List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Mar 2005 17:38:13 -0000 Andriy Tkachuk wrote this message on Fri, Mar 25, 2005 at 16:23 +0530: > Last time i was very interested in resource allocation stuff. > Bonwick's VMEM O(1) universal allocator appeared to be > very interesting: > http://www.usenix.org/event/usenix01/bonwick.html > as good as his cpu-wise magazines addition to > slab allocator which scales allocation on adding cpus. > Solaris use this approach. > > My question is: does folks interested in implementation > of this stuff in fbsd kernel? Yep, I am... and I have an implementation of vmem, but I haven't had much time to work on kmem_cache part of the problem.... > As I see now there is for example O(n) algorithm for > process IDs allocation... In linux it is addressed > using bit-mapping (as far as i understand). > In Oct 2003 there was topic in this list: > "Some mmap observations compared to Linux 2.6/OpenBSD" > in which allocation in mmap was discussed. > As it was appeared that fbsd use O(n) algorithm here compared > to Linux and OpenBSD. I don't know the presend state of this. > > Anyway as for me it looks very attractive to have > universal O(1) facility for allocation of any kernel resources > as well as on smp-configurations than using differend > adhoc's in different parts of kernel. > I seems to me, that Linux doesn't also use some > universal allocation approach but O(1) adhocs instead. > I may mistaken in this. > > What do you hackers thinks about this? I'm definately interested in it.. Though there is only so much time to do work, and other more immidately interesting problems keep popping up for me (locking gem, allowing ethernet packets to be unaligned, arm board for a private project, kqueue, etc.).. If you're interested, I can send you a copy of the code... It's a bare implementation with some basic regression tests performed.... It doesn't layer ontop of kmem_cache though... -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not."