From: peterz@infradead•org (Peter Zijlstra)
To: linux-arm-kernel@lists•infradead.org
Subject: [RFC PATCH v2 0/4] CPUs capacity information for heterogeneous systems
Date: Tue, 19 Jan 2016 16:05:51 +0100 [thread overview]
Message-ID: <20160119150551.GI6344@twins.programming.kicks-ass.net> (raw)
In-Reply-To: <1452262172-31861-1-git-send-email-juri.lelli@arm.com>
On Fri, Jan 08, 2016 at 02:09:28PM +0000, Juri Lelli wrote:
> Second version of this RFC proposes an alternative solution (w.r.t. v1) to the
> problem of how do we init CPUs original capacity: we run a bogus benchmark (for
> this RFC I simple stole int_sqrt from lib/ and I run that in a loop to perform
> some integer computation, I'm sure there are better benchmarks around) on the
> first cpu of each frequency domain (assuming no u-arch differences inside
> domains), measure time to complete a fixed number of iterations and then
> normalize results to SCHED_CAPACITY_SCALE (1024). I didn't spend much time in
> polishing this up or thinking about a better benchmark, as this is an RFC and
> I'd like discussion happening before we make this solution better
> working/looking. However, surprisingly, results are not that bad already:
> 2. Dynamic profiling at boot (v2)
>
> pros: - does not require a standardized definition of capacity
> - cannot be incorrectly tuned (once benchmark is fixed)
> - does not require user/integrator work
>
> cons: - not easy to come up with a clean solution, as it seems interaction
> with several subsystems (e.g., cpufreq) is required
> - not easy to agree upon a single benchmark (that has to be both
> representative and simple enough to run at boot)
> - numbers might (and do) vary from boot to boot
This last point is a total pain for benchmarking, it means nothing is
every reproducible.
Therefore, I would always augment the above (2) with the below (3), such
that you can overwrite the results with a known stable set of numbers:
> 3. sysfs (v1)
>
> pros: - clean and super easy to implement
> - values don't require to be physical properties, defining them is
> probably easier
>
> cons: - CPUs capacity have to be provided after boot (by some init script?)
> - API is modified, still some discussion/review is needed
> - values can still be incorrectly used for runtime tuning purposes
next prev parent reply other threads:[~2016-01-19 15:05 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-08 14:09 [RFC PATCH v2 0/4] CPUs capacity information for heterogeneous systems Juri Lelli
2016-01-08 14:09 ` [RFC PATCH v2 1/4] ARM: initialize cpu_scale to its default Juri Lelli
2016-01-08 14:09 ` [RFC PATCH v2 2/4] drivers/cpufreq: implement init_cpu_capacity_default() Juri Lelli
2016-01-08 14:09 ` [RFC PATCH v2 3/4] arm: Enable dynamic CPU capacity initialization Juri Lelli
2016-01-08 14:09 ` [RFC PATCH v2 4/4] arm64: " Juri Lelli
2016-01-15 18:01 ` [RFC PATCH v2 0/4] CPUs capacity information for heterogeneous systems Mark Brown
2016-01-18 15:01 ` Juri Lelli
2016-01-15 19:50 ` Steve Muckle
2016-01-18 15:13 ` Juri Lelli
2016-01-18 16:13 ` Vincent Guittot
2016-01-18 16:30 ` Juri Lelli
2016-01-18 16:42 ` Vincent Guittot
2016-01-18 17:08 ` Juri Lelli
2016-01-18 17:23 ` Vincent Guittot
2016-01-19 10:59 ` Catalin Marinas
2016-01-19 11:23 ` Juri Lelli
2016-01-19 14:29 ` Juri Lelli
2016-01-19 19:48 ` Steve Muckle
2016-01-19 21:10 ` Mark Brown
2016-01-20 10:22 ` Juri Lelli
2016-01-18 19:25 ` Steve Muckle
2016-01-19 15:05 ` Peter Zijlstra [this message]
2016-01-19 17:50 ` Mark Brown
2016-01-20 10:25 ` Juri Lelli
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=20160119150551.GI6344@twins.programming.kicks-ass.net \
--to=peterz@infradead$(echo .)org \
--cc=linux-arm-kernel@lists$(echo .)infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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