From owner-freebsd-current@FreeBSD.ORG Thu Apr 6 19:11:06 2006 Return-Path: X-Original-To: freebsd-current@freebsd.org 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 BEAA016A8CB for ; Thu, 6 Apr 2006 19:11:06 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6A8BE454CF for ; Thu, 6 Apr 2006 17:11:51 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from localhost (john@localhost [127.0.0.1]) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k36HBf0I072446; Thu, 6 Apr 2006 13:11:42 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Julian Elischer Date: Thu, 6 Apr 2006 13:11:29 -0400 User-Agent: KMail/1.9.1 References: <20060405003358.GA83600@tin.it> <200604051638.59800.jhb@freebsd.org> <4434394F.8020105@elischer.org> In-Reply-To: <4434394F.8020105@elischer.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200604061311.31632.jhb@freebsd.org> X-Virus-Scanned: ClamAV 0.87.1/1377/Thu Apr 6 02:17:48 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.0 required=4.2 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Luigi Rizzo , freebsd-current@freebsd.org Subject: Re: Interesting data on network interrupt - part II X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 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: Thu, 06 Apr 2006 19:11:08 -0000 On Wednesday 05 April 2006 17:40, Julian Elischer wrote: > John Baldwin wrote: > > >On Tuesday 04 April 2006 20:33, Paolo Pisati wrote: > > > > > >>Hi, > >> > >>i updated my work on interrupt profiling with sone new > >>experiments. > >> > >>In total we have now: > >> > >>-FreeBSD 4 PIC (no asm part) > >>-FreeBSD 7 APIC > >>-FreeBSD 7 PIC > >>-FreeBSD 7 PREE APIC > >>-FreeBSD 7 APIC JHB > >> > >>Some quick comments: > >> > >>-PIC is much slower in masking interrupt (7k in PIC vs 3k in APIC) > >>-PREE let new thread save less than 500 ticks of 'queue' while > >> preempted threads are often resumed after a lot > >>-JHB patch shaved 2.5k ticks in interrupt masking op > >> > >>For graphs, data and more comments: > >> > >>http://mercurio.sm.dsi.unimi.it/~pisati/interrupt/ > >> > >> > > > >I'll commit the patch then. :) One thing you might try to do to better > >measure the effects of preemption is to generate kernel work so that > >the bge interrupts occur while the current thread is in the kernel > >rather than in userland. In that case preemption should provide much > >lower latency for interrupt handlers, as w/o preemption, an interrupt > >in kernel mode won't run the ithread until either curthread blocks or > >returns to userland. > > > > > > it looks a bit like the preempted threads shuld be put onto a stack of > threads to resume > so that when the pre-empter finishes, teh previosly active thread is > resumed. > Basically, a preempted thread should be put at the HEAD of it's run > queue, and not the tail.. You changed the scheduler to already do that. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org