From owner-freebsd-current@FreeBSD.ORG Thu May 6 00:57:51 2004 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 CA41916A4CF; Thu, 6 May 2004 00:57:51 -0700 (PDT) Received: from xorpc.icir.org (xorpc.icir.org [192.150.187.68]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9C9BA43D2D; Thu, 6 May 2004 00:57:51 -0700 (PDT) (envelope-from rizzo@icir.org) Received: from xorpc.icir.org (localhost [127.0.0.1]) by xorpc.icir.org (8.12.9p1/8.12.8) with ESMTP id i467vpgd005764; Thu, 6 May 2004 00:57:51 -0700 (PDT) (envelope-from rizzo@xorpc.icir.org) Received: (from rizzo@localhost) by xorpc.icir.org (8.12.9p1/8.12.3/Submit) id i467voub005763; Thu, 6 May 2004 00:57:50 -0700 (PDT) (envelope-from rizzo) Date: Thu, 6 May 2004 00:57:50 -0700 From: Luigi Rizzo To: Gerrit Nagelhout Message-ID: <20040506005750.A5666@xorpc.icir.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5.1i In-Reply-To: ; from gnagelhout@sandvine.com on Wed, May 05, 2004 at 07:38:38PM -0400 cc: freebsd-current@freebsd.org cc: 'Robert Watson' Subject: Re: 4.7 vs 5.2.1 SMP/UP bridging performance 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: Thu, 06 May 2004 07:57:51 -0000 On Wed, May 05, 2004 at 07:38:38PM -0400, Gerrit Nagelhout wrote: > Robert Watson wrote: ... > > Getting polling and SMP to play nicely would be a very good thing, but > > isn't something I currently have the bandwidth to work on. > > Don't suppose we could interest you in that? :-) ... > I won't be able to work on that feature anytime soon, but if some > prototyping turns out to have good results, and the mutex cost issues > are worked out, it's quite likely that we'll try to implement it. The > original author of the polling code (Luigi?) may have some input on > this as well. ENOTIME at the moment, but surely i would like to figure out first some locking issues e.g. related to the clustering of packets to reduce the number of locking ops. The other issue is the partitioning of work -- no point in having multiple polling loops work on the same interface. Possibly we might try to restructure the processing in the network stack by using one processor/polling loop that quickly determines the tasks that need work and then posts the results so that other processors can grab one task each. Kind of a dataflow architecture, in a sense. In any case, I am really impressed by the numbers Gerrit achieved in the UP/4.7 case -- i never went above 800kpps though in my case i think i was limited by the PCI bus (64 bit, 100MHz) or possibly even the chipset cheers luigi