All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yuyang Du <yuyang.du@intel.com>
To: Mike Galbraith <umgwanakikbuti@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
	mingo@kernel.org, linux-kernel@vger.kernel.org,
	bsegall@google.com, pjt@google.com, morten.rasmussen@arm.com,
	vincent.guittot@linaro.org, dietmar.eggemann@arm.com
Subject: Re: [RFC PATCH 1/2] sched: Clean up SD_BALANCE_WAKE flags in sched domain build-up
Date: Thu, 2 Jun 2016 04:03:25 +0800	[thread overview]
Message-ID: <20160601200325.GA18670@intel.com> (raw)
In-Reply-To: <1464773799.4023.72.camel@gmail.com>

On Wed, Jun 01, 2016 at 11:36:39AM +0200, Mike Galbraith wrote:
> > Yup. Up to this point, we don't have any disagreement. And I don't think we
> > have any disagreement conceptually. What the next patch really does is:
> > 
> > (1) we don't remove SD_BALANCE_WAKE as an important sched_domain flag, on
> >     the contrary, we strengthen it.
> > 
> > (2) the semantic of SD_BALANCE_WAKE is currently represented by SD_WAKE_AFFINE,
> >     we actually remove this representation.
> 
> Nope, those two have different meanings.  We pass SD_BALANCE_WAKE to
> identify a ttwu() wakeup, just as we pass SD_BALANCE_FORK to say we're
> waking a child.  SD_WAKE_AFFINE means exactly what it says, but is only
> applicable to ttwu() wakeups.
 
I don't disagree, but want to add that, SD_WAKE_AFFINE has no meaning that is so
special and so important for anyone to use the flag to tune anything. If you want
to do any SD_BALANCE_*, waker CPU is a valid candidate if allowed, that is it.

IIUC your XXX mark and your comment "Prefer wake_affine over balance flags", you
said the same thing: SD_WAKE_AFFINE should be part of SD_BALANCE_WAKE, and should
be part of all SD_BALANCE_* flags,

> > (3) regarding the semantic of SD_WAKE_AFFINE, it is really not about selecting
> >     waker CPU or about the fast path. Conceptually, it is just saying the waker
> >     CPU is a valid and important candidate if SD_BALANCE_WAKE, which is just so
> >     obvious, so I don't think it deserves to be a separate sched_domain flag.
> 
> SD_WAKE_AFFINE being a separate domain flag, the user can turn it
> on/off... separately :)
 
Sure, that is very true, :) But turning it off for what, that is a big question mark.
We don't want a flag unless the flag is for goodness, and not a flag with big question
mark.

> > (4) the outcome is, if SD_BALANCE_WAKE, we definitely will/should try waker CPU,
> >     and if !SD_BALANCE_WAKE, we don't try waker CPU. So nothing functional is
> >     changed.
> 
> If wake_wide() says we do not want an affine wakeup, but you apply
> SD_WAKE_AFFINE meaning to SD_BALANCE_WAKE and turn it on in ->flags,
> we'll give the user a free sample of full balance cost, no?
 
Yes, and otherwise we don't select anything? That is just bad engough whether worse
or not. So the whole fuss I made is really that this is a right thing to start with. :)

  reply	other threads:[~2016-06-02  4:00 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-31  1:11 [RFC PATCH 0/2] Remove and replace SD_WAKE_AFFINE with SD_BALANCE_WAKE Yuyang Du
2016-05-31  1:11 ` [RFC PATCH 1/2] sched: Clean up SD_BALANCE_WAKE flags in sched domain build-up Yuyang Du
2016-05-31  9:21   ` Peter Zijlstra
2016-05-31  1:31     ` Yuyang Du
2016-05-31 10:41       ` Peter Zijlstra
2016-05-31 18:00         ` Yuyang Du
2016-06-01  5:07       ` Mike Galbraith
2016-06-01  0:01         ` Yuyang Du
2016-06-01  8:32           ` Vincent Guittot
2016-06-01  1:03             ` Yuyang Du
2016-06-01  9:24               ` Vincent Guittot
2016-06-01 19:35                 ` Yuyang Du
2016-06-02  6:56                   ` Vincent Guittot
2016-06-01 23:19                     ` Yuyang Du
2016-06-01  9:36           ` Mike Galbraith
2016-06-01 20:03             ` Yuyang Du [this message]
2016-06-02  5:50               ` Mike Galbraith
2016-06-01 22:41                 ` Yuyang Du
2016-06-02  6:44                   ` Mike Galbraith
2016-05-31  1:11 ` [RFC PATCH 2/2] sched: Remove SD_WAKE_AFFINE flag and replace it with SD_BALANCE_WAKE Yuyang Du
2016-05-31  9:23   ` Peter Zijlstra
2016-05-31  1:34     ` Yuyang Du

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=20160601200325.GA18670@intel.com \
    --to=yuyang.du@intel.com \
    --cc=bsegall@google.com \
    --cc=dietmar.eggemann@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=morten.rasmussen@arm.com \
    --cc=peterz@infradead.org \
    --cc=pjt@google.com \
    --cc=umgwanakikbuti@gmail.com \
    --cc=vincent.guittot@linaro.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.