From: Mike Galbraith <efault@gmx.de>
To: Joel Fernandes <joelaf@google.com>
Cc: LKML <linux-kernel@vger.kernel.org>,
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: Mon, 28 Aug 2017 08:10:23 +0200 [thread overview]
Message-ID: <1503900623.6028.33.camel@gmx.de> (raw)
In-Reply-To: <CAJWu+oqSjHFN3nBDJAQanERxxuqQdcer=JvjjuS59B4U_VWstg@mail.gmail.com>
On Sun, 2017-08-27 at 22:27 -0700, Joel Fernandes wrote:
> Hi Mike,
>
> On Sun, Aug 27, 2017 at 11:07 AM, Mike Galbraith <efault@gmx.de> wrote:
> > On Sat, 2017-08-26 at 23:39 -0700, Joel Fernandes wrote:
> >>
> >> Also about real world benchmarks, in Android we have usecases that
> >> show that the graphics performance and we have risk of frame drops if
> >> we don't use the sync flag so this is a real world need.
> >
> > That likely has everything to do with cpufreq not realizing that your
> > CPUs really are quite busy when scheduling cross core at fairly high
> > frequency, and not clocking up properly.
> >
>
> I'm glad you brought this point up. Since Android O, the userspace
> processes are much more split across procedure calls due to a feature
> called treble (which does this for security, modularity etc). Due to
> this, a lot of things that were happening within a process boundary
> happen now across process boundaries over the binder bus. Early on
> folks noticed that this caused performance issues without sync flag
> being used as a more strong hint. This can happen when there are 2
> threads are in different frequency domains on different CPUs and are
> communicating over binder, due to this the combined load of both
> threads is divided between the individual CPUs and causes them to run
> at lower frequency. Where as if they are running together on the same
> CPUs, then they would run at a higher frequency and perform better as
> their combined load would run at a higher frequency. So a stronger
> sync actually helps this case if we're careful about using it when
> possible.
Sure, but isn't that really a cpufreq issue? We schedule cross core
quite aggressively for obvious reasons. Now on mostly idle handheld
devices, you may get better battery life by stacking tasks a bit more,
in which case a sync-me-harder flag may be what you really want/need,
but with modern CPUs, I'm kinda skeptical of that, would have to see
cold hard numbers to become a believer. Iff deeper cstate etc for
longer does make a big difference, I can imagine wakeup time migrate
leftward if capacity exists as an "on battery" tactic. (though that
thought also invokes some unpleasant bounce fest images)
-Mike
next prev parent reply other threads:[~2017-08-28 6:11 UTC|newest]
Thread overview: 32+ 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
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 [this message]
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 13:40 ` kernel test robot
2017-09-10 16:53 ` Joel Fernandes
2017-09-10 16:53 ` Joel Fernandes
2017-09-11 2:55 ` Mike Galbraith
2017-09-11 6:32 ` Joel Fernandes
2017-09-11 6:32 ` Joel Fernandes
2017-09-11 8:03 ` Mike Galbraith
2017-09-14 15:56 ` Rik van Riel
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 6:42 ` Joel Fernandes
2017-09-17 16:47 ` Mike Galbraith
2017-09-17 21:41 ` Joel Fernandes
2017-09-17 21:41 ` Joel Fernandes
2017-09-18 5:30 ` Mike Galbraith
2017-09-24 23:46 ` Joel Fernandes
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=1503900623.6028.33.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 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.