From owner-freebsd-current Sun Sep 21 22:05:36 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id WAA12278 for current-outgoing; Sun, 21 Sep 1997 22:05:36 -0700 (PDT) Received: from ns.mt.sri.com (SRI-56K-FR.mt.net [206.127.65.42]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id WAA12273 for ; Sun, 21 Sep 1997 22:05:27 -0700 (PDT) Received: from rocky.mt.sri.com (rocky.mt.sri.com [206.127.76.100]) by ns.mt.sri.com (8.8.7/8.8.7) with ESMTP id XAA09334; Sun, 21 Sep 1997 23:05:22 -0600 (MDT) Received: (from nate@localhost) by rocky.mt.sri.com (8.7.5/8.7.3) id XAA29116; Sun, 21 Sep 1997 23:05:20 -0600 (MDT) Date: Sun, 21 Sep 1997 23:05:20 -0600 (MDT) Message-Id: <199709220505.XAA29116@rocky.mt.sri.com> From: Nate Williams MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit To: "Justin T. Gibbs" Cc: current@freebsd.org Subject: Re: cvs commit: src/sys/conf files src/sys/dev/vx if_vx.c if_vxreg.h src/sys/i386/apm apm.c src/sys/i386/conf GENERIC files.i386 src/sys/i386/eisa 3c5x9.c aha1742.c aic7770.c bt74x.c eisaconf.c eisaconf.h if_fea.c if_vx_eisa.c src/sys/i386/i386 autoconf.c ... In-Reply-To: <199709220008.SAA29412@pluto.plutotech.com> References: <199709212210.PAA13470@freefall.freebsd.org> <199709220008.SAA29412@pluto.plutotech.com> X-Mailer: VM 6.29 under 19.15 XEmacs Lucid Sender: owner-freebsd-current@freebsd.org X-Loop: FreeBSD.org Precedence: bulk > 2) New callout interface. This gives O(1) insertion and removal of > callouts and an O(hash chain length) amount of work to be performed > in softclock. ... > the O(n) hit on insertion and removal was painful. The networking > code is another area that may want to make heavier use of callouts > now that it is efficient to do so. If you are maintaining a driver > outside of the tree, or need to update a driver I missed, see the > timeout.9 man page for details on how the new interface works. For > those who want to read more about the new implementation, here's a > pointer to the original paper: > > http://www.cs.berkeley.edu/~amc/research/timer/ I just read the paper, and it's interesting, but they never give results based on what the kernel does now. Basically, it's pretty easy to say that registering/unregistering timers is now much faster, but given that things can take longer in softclock(), it's not obvious (at least to me) that this is a win overall, since we call softlock a *heck* of alot more than we register/de-register timeout/callouts. Does anyone have insight they're willing to share, since the author's did prove they accomplished what they set out to do, but it didn't really give me a warm-fuzzy that it would help improve performance. Nate