public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Rik van Riel <riel@redhat.com>
To: Mike Galbraith <umgwanakikbuti@gmail.com>
Cc: Michael wang <wangyun@linux.vnet.ibm.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@kernel.org>, Alex Shi <alex.shi@linaro.org>,
	Paul Turner <pjt@google.com>, Mel Gorman <mgorman@suse.de>,
	Daniel Lezcano <daniel.lezcano@linaro.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] sched: select 'idle' cfs_rq per task-group to prevent tg-internal imbalance
Date: Fri, 11 Jul 2014 12:11:45 -0400	[thread overview]
Message-ID: <53C00CC1.1030401@redhat.com> (raw)
In-Reply-To: <1404359462.5137.72.camel@marge.simpson.net>

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 07/02/2014 11:51 PM, Mike Galbraith wrote:
> On Wed, 2014-07-02 at 10:47 -0400, Rik van Riel wrote:
>> On 07/01/2014 04:38 AM, Michael wang wrote:
>>> On 07/01/2014 04:20 PM, Peter Zijlstra wrote: [snip]
>>>>> 
>>>>> Just wondering could we make this another scheduler
>>>>> feature?
>>>> 
>>>> No; sched_feat() is for debugging, BIG CLUE: its guarded by 
>>>> CONFIG_SCHED_DEBUG, anybody using it in production or
>>>> anywhere else is broken.
>>>> 
>>>> If people are using it, I should remove or at least randomize
>>>> the interface.
>>> 
>>> Fair enough... but is there any suggestions on how to handle
>>> this issue?
>>> 
>>> Currently when dbench running with stress, it could only gain
>>> one CPU, and cpu-cgroup cpu.shares is meaningless, is there any
>>> good methods to address that?
>> 
>> select_idle_sibling will iterate over all of the CPUs in an LLC
>> domain if there is no idle cpu in the domain.
>> 
>> I suspect it would not take much extra code to track down the
>> idlest CPU in the LLC domain, and make sure to schedule tasks
>> there, in case no completely idle CPU was found.
>> 
>> Are there any major problems with that thinking?
> 
> That's full wake balance.. if that was cheap,
> select_idle_sibling() would not exist.

Full wake balance iterates over all the groups in the system,
select_idle_sibling only over one LLC domain.

If no CPU in the LLC domain is idle, select_idle_sibling will
iterate over all of them.  During this iteration, which the
code already does, it should be possible to identify the least
loaded of the CPUs and pick that one.

- -- 
All rights reversed
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBAgAGBQJTwAzBAAoJEM553pKExN6DlrEH/RKQPdAdMFK/pxZ/2f9TCXFK
Vq25LWZeJQhNOrH3Q6VzTTfAG06O8+Bjxfb+SR6BOHCtD4kCBqaBdwVVUDXC+MbK
NdBa3GtCT3ahvguiYLPEHL1vugND2yzHUgnr9EhUgk6zhnLxfvhIIJj7uv+ZRsri
o8DsLrIG1jqDGVbbu5ssZ37w6cldoFBw0FAHcVAquoM2SP+/MuatW1SCkRP31IVL
q0dssP1CD0Nkecz+S6WSI59c0Wt0c73oWNg/q41a/kha7RI1J5VF5yNFacq/uL0g
Xxyb0mOiJarqMtzuq5ItlOiTry+BpqY1jFhN5ZhFjt9mtvpTR1C/tcXpOw77y0Y=
=BEJk
-----END PGP SIGNATURE-----

  reply	other threads:[~2014-07-11 16:12 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-18  4:50 [PATCH] sched: select 'idle' cfs_rq per task-group to prevent tg-internal imbalance Michael wang
2014-06-23  9:42 ` Peter Zijlstra
2014-06-24  3:34   ` Michael wang
2014-07-01  8:20     ` Peter Zijlstra
2014-07-01  8:38       ` Michael wang
2014-07-01  8:56         ` Peter Zijlstra
2014-07-02  2:47           ` Michael wang
2014-07-02 12:49             ` Peter Zijlstra
2014-07-02 13:15               ` Peter Zijlstra
2014-07-03 16:29                 ` Nicolas Pitre
2014-07-03  2:09               ` Michael wang
2014-07-02 14:47         ` Rik van Riel
2014-07-03  2:16           ` Michael wang
2014-07-03  3:51           ` Mike Galbraith
2014-07-11 16:11             ` Rik van Riel [this message]
2014-07-14  1:29               ` Michael wang
2014-06-30  7:36 ` Michael wang
2014-06-30  8:06   ` Mike Galbraith
2014-06-30  8:47     ` Michael wang
2014-06-30  9:27       ` Mike Galbraith
2014-07-01  2:57         ` Michael wang
2014-07-01  5:41           ` Mike Galbraith
2014-07-01  6:10             ` Michael wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53C00CC1.1030401@redhat.com \
    --to=riel@redhat.com \
    --cc=alex.shi@linaro.org \
    --cc=daniel.lezcano@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mgorman@suse.de \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=pjt@google.com \
    --cc=umgwanakikbuti@gmail.com \
    --cc=wangyun@linux.vnet.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox