Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755849Ab0F2RMc (ORCPT ); Tue, 29 Jun 2010 13:12:32 -0400 Received: from mail-fx0-f46.google.com ([209.85.161.46]:63593 "EHLO mail-fx0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751924Ab0F2RMb (ORCPT ); Tue, 29 Jun 2010 13:12:31 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; b=nUi0tfvza+2rEIltnrjc5gHQqS+L8xwpNSLLhJFCAWpUrk1ZyzVpDQqtUpb1EWWcRS LsTtMeoyOKn8Ckkt9aKs6kPe+rTJfflhC13A5mcM8psLNtB0QvQ6QwG6EsoCqvdaKE9Q p13zrzQ28MX8idqO0E/MVaOc+QZIYLAW2fDq0= Message-ID: <4C2A2979.3000609@gmail.com> Date: Tue, 29 Jun 2010 19:12:25 +0200 From: Tejun Heo User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100317 SUSE/3.0.4-1.1.1 Thunderbird/3.0.4 MIME-Version: 1.0 To: Arjan van de Ven CC: Frederic Weisbecker , torvalds@linux-foundation.org, mingo@elte.hu, linux-kernel@vger.kernel.org, jeff@garzik.org, akpm@linux-foundation.org, rusty@rustcorp.com.au, cl@linux-foundation.org, dhowells@redhat.com, oleg@redhat.com, axboe@kernel.dk, dwalker@codeaurora.org, stefanr@s5r6.in-berlin.de, florian@mickler.org, andi@firstfloor.org, mst@redhat.com, randy.dunlap@oracle.com, Arjan van de Ven Subject: Re: [PATCH 34/35] async: use workqueue for worker pool References: <1277759063-24607-1-git-send-email-tj@kernel.org> <1277759063-24607-35-git-send-email-tj@kernel.org> <20100628225513.GB10104@nowhere> <4C299FD8.7030904@kernel.org> <20100629121855.GA5318@nowhere> <4C2A1558.7060007@kernel.org> <20100629155228.GK5318@nowhere> <4C2A176F.1090101@kernel.org> <4C2A220B.8080006@linux.intel.com> <4C2A2688.1020206@kernel.org> In-Reply-To: <4C2A2688.1020206@kernel.org> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1420 Lines: 34 On 06/29/2010 06:59 PM, Tejun Heo wrote: > Hello, Arjan. > > On 06/29/2010 06:40 PM, Arjan van de Ven wrote: >> uh? clearly the assumption is that if I have a 16 CPU machine, and 12 >> items of work get scheduled, >> that we get all 12 running in parallel. All the smarts of cmwq surely >> only kick in once you've reached the >> "one work item per cpu" threshold ??? > > Hmmm... workqueue workers are bound to certain cpu, so if you schedule > a work on a specific CPU, it will run there. Once a cpu gets > saturated, the issuing thread will be moved elsewhere. I don't think > it matters to any of the current async users one way or the other, > would it? Thinking more about it. It's now not difficult to add a gcwq for an unbound pseudo CPU number and use it as host for workers which can run on any CPU. The automatic concurrency management doesn't make much sense for those workers, so @max_active can be used as the explicit concurrency throttle. It's not even gonna take a lot of code but I'm just not convinced that there's much benefit in doing that. So, yeah, if necessary, sure, but let's think whether it's gonna be actually useful. Thanks. -- tejun -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/