From owner-svn-src-head@FreeBSD.ORG Thu Apr 23 13:08:56 2009 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0E3921065741; Thu, 23 Apr 2009 13:08:55 +0000 (UTC) (envelope-from ivoras@gmail.com) Received: from mail-ew0-f171.google.com (mail-ew0-f171.google.com [209.85.219.171]) by mx1.freebsd.org (Postfix) with ESMTP id 4DDAC8FC20; Thu, 23 Apr 2009 13:08:53 +0000 (UTC) (envelope-from ivoras@gmail.com) Received: by ewy19 with SMTP id 19so475834ewy.43 for ; Thu, 23 Apr 2009 06:08:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:from:date:x-google-sender-auth:message-id:subject:to:cc :content-type:content-transfer-encoding; bh=60F8+0E6Ea2jyKrbSVeRqUiz2D6QmBMoNBmXEhZcJ6E=; b=oKFU5YWz7ugnFu0cNdfcOjB4bG+8C9K9ZChm4VdiNXiBnAFgiVBEcXO5oJEBIAQ8a8 dVZbMu8nKpsM7v8sRbbm9U2SPaEXQnLB5RGspFtBDyChN9z3LUGazAItrLUHh/t2HYQk pVSZSnudmIBkGaQZwvu5LzVPQIhy5mHhsL0yg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type :content-transfer-encoding; b=jxJiqJLYfG+oZtFnTfKftojkpNjiclBJOv4JfC5WWAiUpDiIORSQ3Venmo2tSTJ5xy 1HcQFgRiWbtk4hpxeZ6ptqlVkZKckiAebl6+8fGmfFns6O6S83yFSWEZQ7V3xxFwtJHu twsfXJzNWDytWc6nO1bZ+/zlHXwTSlhxu5pEA= MIME-Version: 1.0 Sender: ivoras@gmail.com Received: by 10.210.19.7 with SMTP id 7mr972444ebs.90.1240492133239; Thu, 23 Apr 2009 06:08:53 -0700 (PDT) In-Reply-To: References: <200904222140.n3MLebn3068260@svn.freebsd.org> <9bbcef730904230501k26197958tb78d88958bd20654@mail.gmail.com> From: Ivan Voras Date: Thu, 23 Apr 2009 15:08:38 +0200 X-Google-Sender-Auth: 449d32fba838d4e8 Message-ID: <9bbcef730904230608t7c91629erda244dbd38e617a8@mail.gmail.com> To: Robert Watson Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r191405 - in head/sys: amd64/amd64 i386/i386 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Apr 2009 13:08:56 -0000 2009/4/23 Robert Watson : > > On Thu, 23 Apr 2009, Ivan Voras wrote: > >> 2009/4/23 Robert Watson : >> >>> Do you have any ideas about ways to usefully represent and manage >>> concepts like "pick a close CPU" or "the set of CPUs that are close"? = =C2=A0For >>> example, if I have available a flow identifier, hashing to one of a set= of >>> available CPUs is easy, but what would you suggest as an efficient >>> representation to hash from a set of close available CPUs rather than t= he >>> entire pool? >> >> Excuse me if I'm missing the point but isn't this already done by ULE an= d >> for almost the same reasons? Shouldn't the scheduler (or its topology >> infrastructure if it's separated from the scheduler) be the best place t= o do >> it? > > Yes, the scheduler will presumably provide the abstractions we're interes= ted > in in order to implement this sort of policy. =C2=A0However, the schedule= r's > notion of "strictly ordered events" is represented by a thread, and threa= ds > scale to several thousand per machine. =C2=A0The network stack's notion o= f > "strictly ordered events" is represented by a flow, and we need to be abl= e > to handle millions of those at once. =C2=A0The mapping between flows and = threads > is something the network stack is best suited to do, since it will be > passing around and ordering the work, but with the help of appropriate > abstractions from the scheduler so that it knows how many and which threa= ds > exist to do the work, and so that it can use scheduler-provided metrics, > such as CPU topology, to make reasonable choices about placement of work > when there's flexibility in the ordering. Thanks, it's much clearer now!