From: Dietmar Eggemann <dietmar.eggemann@arm.com>
To: Leo Yan <leo.yan@linaro.org>
Cc: linux-kernel@vger.kernel.org,
Peter Zijlstra <peterz@infradead.org>,
Quentin Perret <quentin.perret@arm.com>,
Thara Gopinath <thara.gopinath@linaro.org>,
linux-pm@vger.kernel.org,
Morten Rasmussen <morten.rasmussen@arm.com>,
Chris Redpath <chris.redpath@arm.com>,
Patrick Bellasi <patrick.bellasi@arm.com>,
Valentin Schneider <valentin.schneider@arm.com>,
"Rafael J . Wysocki" <rjw@rjwysocki.net>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Vincent Guittot <vincent.guittot@linaro.org>,
Viresh Kumar <viresh.kumar@linaro.org>,
Todd Kjos <tkjos@google.com>, Joel Fernandes <joelaf@google.com>,
Juri Lelli <juri.lelli@redhat.com>,
Steve Muckle <smuckle@google.com>,
Eduardo Valentin <edubezval@gmail.com>
Subject: Re: [RFC PATCH v2 0/6] Energy Aware Scheduling
Date: Tue, 17 Apr 2018 19:22:03 +0200 [thread overview]
Message-ID: <20ed355c-21f7-79c2-e3b3-05d8cfb0c176@arm.com> (raw)
In-Reply-To: <20180417125059.GA18509@leoy-ThinkPad-X240s>
Hi Leo,
On 04/17/2018 02:50 PM, Leo Yan wrote:
> Hi Dietmar,
>
> On Fri, Apr 06, 2018 at 04:36:01PM +0100, Dietmar Eggemann wrote:
[...]
>> 1.1 Energy Model
>>
>> A CPU with asymmetric core capacities features cores with significantly
>> different energy and performance characteristics. As the configurations
>> can vary greatly from one SoC to another, designing an energy-efficient
>> scheduling heuristic that performs well on a broad spectrum of platforms
>> appears to be particularly hard.
>> This proposal attempts to solve this issue by providing the scheduler
>> with an energy model of the platform which enables energy impact
>> estimation of scheduling decisions in a generic way. The energy model is
>> kept very simple as it represents only the active power of CPUs at all
>> available P-states and relies on existing data in the kernel (only used
>> by the thermal subsystem so far).
>> This proposal does not include the power consumption of C-states and
>> cluster-level resources which were originally introduced in [1] since
>> firstly, their impact on task placement decisions appears to be
>> neglectable on modern asymmetric platforms and secondly, they require
>> additional infrastructure and data (e.g new DT entries).
>
> Seems to me, if we move forward a bit for the energy model, we can use
> more simple method by generate power consumption:
>
> Power(@Freq) = Power(cpu_util=100%@Freq) - Power(cpu_util=%0@Freq)
>
> From upper formula, the power data includes CPU and cluster level
> power (and includes dynamic power and static leakage) but this is
> quite straightforward for measurement.
>
> I read a bit for Quentin's slides for simplized power modeling
> experiments [1], IIUC the simplized power modeling still bases on the
> distinguished CPU and cluster c-state and p-state power data, and just
> select CPU p-state power data for scheduler. I wander if we can
> simplize the power measurement, so the power data can be generated in
> single one testing and the power data without any post processing.
>
> This might need more detailed experiment to support this idea, just
> want to know how about you guys think for this?
>
> This is a side topic for this patch series, so whatever the conclusion
> for it, I think this will not impact anything of this patch series
> implementation and upstreaming.
>
> [1] http://connect.linaro.org/resource/hkg18/hkg18-501/
The simplified Energy Model in this patch-set only contains the per-cpu
p-state power data. This allows us to only rely on the knowledge of
which OPP's (opp frequency/max frequency) we have for the individual
frequency domains and the CPU dt property 'dynamic-power-coefficient'.
This is even encapsulated in the new PM_OPP library function
dev_pm_opp_get_power().
Please note that this has to be redesigned since neither Rafael nor
Peter like the idea of using PM_OPP library here. But we will continue
to only use per-cpu p-state power data.
[...]
>> 30 iterations of perf bench sched messaging --pipe --thread --group G
>> --loop L with G=[1 2 4 8] and L=50000 (Hikey960)/16000 (Juno r0).
>
> What's the reason to select different loop number for Hikey960 and
> Juno? Based on the testing time?
The Juno r0 board has only ~0.3 of the performance of the Hikey960. We
wanted to have roughly comparable test execution time numbers. We're
only interested in the difference between running w/ and w/o this code
per platform.
prev parent reply other threads:[~2018-04-17 17:22 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-06 15:36 Dietmar Eggemann
2018-04-06 15:36 ` [RFC PATCH v2 1/6] sched/fair: Create util_fits_capacity() Dietmar Eggemann
2018-04-12 7:02 ` Viresh Kumar
2018-04-12 8:20 ` Dietmar Eggemann
2018-04-06 15:36 ` [RFC PATCH v2 2/6] sched: Introduce energy models of CPUs Dietmar Eggemann
2018-04-10 11:54 ` Peter Zijlstra
2018-04-10 12:03 ` Dietmar Eggemann
2018-04-13 4:02 ` Viresh Kumar
2018-04-13 8:37 ` Quentin Perret
2018-04-06 15:36 ` [RFC PATCH v2 3/6] sched: Add over-utilization/tipping point indicator Dietmar Eggemann
2018-04-13 23:56 ` Joel Fernandes
2018-04-18 11:17 ` Quentin Perret
2018-04-20 8:13 ` Joel Fernandes
2018-04-20 8:14 ` Joel Fernandes
2018-04-20 8:31 ` Quentin Perret
2018-04-20 8:57 ` Juri Lelli
2018-04-17 14:25 ` Leo Yan
2018-04-17 17:39 ` Dietmar Eggemann
2018-04-18 0:18 ` Leo Yan
2018-04-06 15:36 ` [RFC PATCH v2 4/6] sched/fair: Introduce an energy estimation helper function Dietmar Eggemann
2018-04-10 12:51 ` Peter Zijlstra
2018-04-10 13:56 ` Quentin Perret
2018-04-10 14:08 ` Peter Zijlstra
2018-04-13 6:27 ` Viresh Kumar
2018-04-17 15:22 ` Leo Yan
2018-04-18 8:13 ` Quentin Perret
2018-04-18 9:19 ` Leo Yan
2018-04-18 11:06 ` Quentin Perret
2018-04-18 9:23 ` Leo Yan
2018-04-20 14:51 ` Quentin Perret
2018-04-18 12:15 ` Leo Yan
2018-04-20 14:42 ` Quentin Perret
2018-04-20 16:27 ` Leo Yan
2018-04-25 8:23 ` Quentin Perret
2018-04-06 15:36 ` [RFC PATCH v2 5/6] sched/fair: Select an energy-efficient CPU on task wake-up Dietmar Eggemann
2018-04-09 16:30 ` Peter Zijlstra
2018-04-09 16:43 ` Quentin Perret
2018-04-10 17:29 ` Peter Zijlstra
2018-04-10 18:14 ` Quentin Perret
2018-04-17 15:39 ` Leo Yan
2018-04-18 7:57 ` Quentin Perret
2018-04-06 15:36 ` [RFC PATCH v2 6/6] drivers: base: arch_topology.c: Enable EAS for arm/arm64 platforms Dietmar Eggemann
2018-04-17 12:50 ` [RFC PATCH v2 0/6] Energy Aware Scheduling Leo Yan
2018-04-17 17:22 ` Dietmar Eggemann [this message]
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=20ed355c-21f7-79c2-e3b3-05d8cfb0c176@arm.com \
--to=dietmar.eggemann@arm.com \
--cc=chris.redpath@arm.com \
--cc=edubezval@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=joelaf@google.com \
--cc=juri.lelli@redhat.com \
--cc=leo.yan@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=morten.rasmussen@arm.com \
--cc=patrick.bellasi@arm.com \
--cc=peterz@infradead.org \
--cc=quentin.perret@arm.com \
--cc=rjw@rjwysocki.net \
--cc=smuckle@google.com \
--cc=thara.gopinath@linaro.org \
--cc=tkjos@google.com \
--cc=valentin.schneider@arm.com \
--cc=vincent.guittot@linaro.org \
--cc=viresh.kumar@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®