From: Mike Galbraith <efault@gmx.de>
To: Joel Fernandes <joelaf@google.com>, linux-kernel@vger.kernel.org
Cc: Peter Zijlstra <peterz@infradead.org>,
Josef Bacik <jbacik@fb.com>, Juri Lelli <Juri.Lelli@arm.com>,
Brendan Jackman <brendan.jackman@arm.com>,
Dietmar Eggemann <dietmar.eggemann@arm.com>,
Matt Fleming <matt@codeblueprint.co.uk>,
Rik van Riel <riel@redhat.com>, Ingo Molnar <mingo@redhat.com>
Subject: Re: [PATCH RFC/RFT] sched/fair: Improve the behavior of sync flag
Date: Sun, 27 Aug 2017 08:08:10 +0200 [thread overview]
Message-ID: <1503814090.7566.50.camel@gmx.de> (raw)
In-Reply-To: <1503812659.7566.43.camel@gmx.de>
On Sun, 2017-08-27 at 07:44 +0200, Mike Galbraith wrote:
> On Sat, 2017-08-26 at 18:02 -0700, Joel Fernandes wrote:
> > Binder (Android's IPC mechanism) which uses sync wake ups during synchronous
> > transactions to the scheduler to indicate that the waker is about to sleep
> > soon. The current wake up path can improved when the sync flag is passed
> > resulting in higher binder performance. In this patch we more strongly wake up
> > the wakee on the waker's CPU if sync is passed based on a few other conditions
> > such as wake_cap, cpus allowed. wake_wide is checked only after the sync flag
> > check so that it doesn't mess up sync. Binder throughput tests see good
> > improvement improvement when waking up wakee (calling thread) on the waker's
> > CPU (called thread) with this flag. Some tests results are below:
>
> Sync is not a contract, it's a hint. If you really want sync behavior,
> you need to create a contract signed in blood to signal that you really
> really are passing the baton.
P.S. to get the most bang for your synchronous buck, you want a
preemptive wakeup.. but that butts heads with the fair engine.
-Mike
next prev parent reply other threads:[~2017-08-27 6:08 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-27 1:02 [PATCH RFC/RFT] sched/fair: Improve the behavior of sync flag Joel Fernandes
2017-08-27 5:44 ` Mike Galbraith
2017-08-27 6:08 ` Mike Galbraith [this message]
2017-08-27 6:39 ` Joel Fernandes
2017-08-27 7:16 ` Mike Galbraith
2017-08-27 18:07 ` Mike Galbraith
2017-08-28 5:27 ` Joel Fernandes
2017-08-28 6:10 ` Mike Galbraith
2017-08-28 6:47 ` Mike Galbraith
2017-08-28 16:20 ` Joel Fernandes
2017-08-28 17:17 ` Mike Galbraith
2017-08-27 6:19 ` Joel Fernandes
[not found] ` <CAJWu+ooAPiuS+C7Gos4+8G9+DAvQL8X7=63D8U=yVLJkywbF7Q@mail.gmail.com>
2017-08-27 6:57 ` Mike Galbraith
2017-09-10 13:40 ` [lkp-robot] [sched/fair] 6d46bd3d97: netperf.Throughput_tps -11.3% regression kernel test robot
2017-09-10 16:53 ` Joel Fernandes
2017-09-11 2:55 ` Mike Galbraith
2017-09-11 6:32 ` Joel Fernandes
2017-09-11 8:03 ` Mike Galbraith
2017-09-14 15:56 ` Rik van Riel
2017-09-15 4:06 ` Mike Galbraith
2017-09-17 6:42 ` Joel Fernandes
2017-09-17 16:47 ` Mike Galbraith
2017-09-17 21:41 ` Joel Fernandes
2017-09-18 5:30 ` Mike Galbraith
2017-09-24 23:46 ` Joel Fernandes
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=1503814090.7566.50.camel@gmx.de \
--to=efault@gmx.de \
--cc=Juri.Lelli@arm.com \
--cc=brendan.jackman@arm.com \
--cc=dietmar.eggemann@arm.com \
--cc=jbacik@fb.com \
--cc=joelaf@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=matt@codeblueprint.co.uk \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=riel@redhat.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