From owner-freebsd-current@FreeBSD.ORG Tue Nov 6 11:02:21 2012 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D0FB4F9B; Tue, 6 Nov 2012 11:02:21 +0000 (UTC) (envelope-from fabien.thomas@netasq.com) Received: from work.netasq.com (gwlille.netasq.com [91.212.116.1]) by mx1.freebsd.org (Postfix) with ESMTP id 8B0868FC19; Tue, 6 Nov 2012 11:02:20 +0000 (UTC) Received: from [10.2.1.1] (unknown [10.2.1.1]) by work.netasq.com (Postfix) with ESMTPSA id D5F982705318; Tue, 6 Nov 2012 12:02:09 +0100 (CET) Subject: Re: polling's future [was: Re: Dynamic Ticks/HZ] Mime-Version: 1.0 (Apple Message framework v1283) Content-Type: text/plain; charset=us-ascii From: Fabien Thomas In-Reply-To: <5098E526.6070101@freebsd.org> Date: Tue, 6 Nov 2012 12:02:09 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: <04A8DD03-71B2-4EFA-864B-522F49BF1478@netasq.com> References: <509758B8.1000409@rewt.org.uk> <50975F6F.6010907@rewt.org.uk> <5097898C.9080109@rewt.org.uk> <20121105163654.GA12870@onelab2.iet.unipi.it> <5097E880.8010001@rewt.org.uk> <20121105165748.GA13098@onelab2.iet.unipi.it> <5098E526.6070101@freebsd.org> To: Andre Oppermann X-Mailer: Apple Mail (2.1283) Cc: Davide Italiano , Ryan Stone , Joe Holden , Luigi Rizzo , FreeBSD Current X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.14 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: Tue, 06 Nov 2012 11:02:21 -0000 >>=20 >=20 > Hi Luigi, >=20 > do you agree on polling having outlived its usefulness in the light > of interrupt moderating NIC's and SMP complications/disadvantages? >=20 If you have only one interface yes polling is not really necessary. If you have 10 interfaces the interrupt moderation threshold is hard to = find to not saturate the system. Doing polling at 8000hz in that case is a lot better regarding global = interrupt level. The problem is that in the current state polling does not work well and = people remember the good old time where polling was better. rstone@ and myself have made some improvement to polling. You can find a diff here for 8.3 with updated intel driver :=20 http://people.freebsd.org/~fabient/polling/patch-pollif_8.3_11052012 - support multiqueue for ixgbe, igb, em. - compat API for old driver - keep interrupt for link / status - user core mapping / auto mapping - deadline to keep cpu available - integrated to netisr - deferred packet injection with optional prefetching Performance are on par with interrupt but you can keep a system alive = more easily by accounting all network processing for the deadline (with direct = dispatch). Fabien > And also that in its current state it is providing no benefit, if > not negative, and that fixing it for the current world-order is major > undertaking that's not really beneficial considering superior > alternatives? >=20 > That nobody is maintaining it and taking care of and fixing the = frequent > problem, performance and bug reports? >=20 > Additionally it misleads people without deep network knowledge to > compile it into their kernel under wrong assumptions and see a > degradation of performance, if not other side effects? >=20 > Under these considerations I propose to remove polling support from > current and 10.0 in lieu of upcoming superior alternatives (netmap > enabled features). It was a great feature in the past but is beyond > retirement and should live a peaceful live in the attic. >=20 > --=20 > Andre >=20 > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to = "freebsd-current-unsubscribe@freebsd.org"