mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@rjwysocki.net>
To: Michael Turquette <mturquette@baylibre.com>
Cc: peterz@infradead.org, linux-kernel@vger.kernel.org,
	linux-pm@vger.kernel.org, Juri.Lelli@arm.com,
	steve.muckle@linaro.org, morten.rasmussen@arm.com,
	dietmar.eggemann@arm.com, vincent.guittot@linaro.org,
	Michael Turquette <mturquette+renesas@baylibre.com>
Subject: Re: [PATCH 0/8] schedutil enhancements
Date: Wed, 16 Mar 2016 01:08:02 +0100	[thread overview]
Message-ID: <2494941.hQv4heU2vL@vostro.rjw.lan> (raw)
In-Reply-To: <1457932932-28444-1-git-send-email-mturquette+renesas@baylibre.com>

Hi Mike,

On Sunday, March 13, 2016 10:22:04 PM Michael Turquette wrote:
> I'm happy that scheduler-driven cpu frequency selection is getting some
> attention. Rafael's recent schedutil governor is a step in the right direction.

Thanks!

> This series builds on top of Rafael's schedutil governor, bringing it to parity
> with some of the features in the schedfreq series posted by Steve[0], as well
> as adding a couple of new things.
> 
> Patch 1 removes cpufreq_trigger_update()
> 
> Patches 2-4 move the cfs capacity margin out of the governor and into
> cfs. This value is made tunable by a sysfs control in schedutil.
> 
> Patches 5-6 make cpufreq_update_util() aware of multiple scheduler
> classes (cfs, rt & dl), and add storage & summation of these per-class
> utilization values into schedutil.
> 
> Patches 7-8 introduces Dietmar's generic cpufreq implementation[1] of the
> frequency invariance hook and changes the preprocessor magic in sched.h to
> favor the cpufreq implementation over arch- or platform-specific ones.

After the discussion mentioned by Peter in one of his responses (the relevant
e-mail thread is here: http://marc.info/?t=145688568600003&r=1&w=4) I have
changed the schedutil series to address some points made during it.

In particular, I've modified it to use the formula from 
http://marc.info/?l=linux-acpi&m=145756618321500&w=4 with the twist that
if the utilization is frequency-invariant, max_freq will be used instead
of current_freq.

The way it recognizes whether or not that is the case is based on the
Peter's suggestion from http://marc.info/?l=linux-kernel&m=145760739700716&w=4.

For this reason, the governor goes into kernel/sched/ as I don't want
arch_scale_freq_invariant() to be exposed to cpufreq at large, because
schedutil will be the only governor using it in foreseeable future.

The fast switching support patch is slightly different too, but that's
not relevant here.

The new series is in the pm-cpufreq-experimental branch of my tree:

git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git \
pm-cpufreq-experimental

I haven't had the time to post it over the last few days (sorry about
that), but I'll do that tomorrow.

Thanks,
Rafael

      parent reply	other threads:[~2016-03-16  0:06 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-14  5:22 Michael Turquette
2016-03-14  5:22 ` [PATCH 1/8] sched/cpufreq: remove cpufreq_trigger_update() Michael Turquette
2016-03-15 21:14   ` Peter Zijlstra
     [not found]     ` <20160315214545.30639.98727@quark.deferred.io>
2016-03-15 21:49       ` Peter Zijlstra
2016-03-16  8:00   ` Peter Zijlstra
2016-03-14  5:22 ` [PATCH 2/8] sched/fair: add margin to utilization update Michael Turquette
2016-03-15 21:16   ` Peter Zijlstra
     [not found]     ` <20160315212848.30639.38747@quark.deferred.io>
2016-03-15 21:43       ` Peter Zijlstra
2016-03-16  2:52   ` Steve Muckle
2016-03-16 22:12     ` Michael Turquette
2016-03-14  5:22 ` [PATCH 3/8] sched/cpufreq: new cfs capacity margin helpers Michael Turquette
2016-03-15 21:17   ` Peter Zijlstra
2016-03-14  5:22 ` [PATCH 4/8] cpufreq/schedutil: sysfs capacity margin tunable Michael Turquette
2016-03-15 21:20   ` Peter Zijlstra
     [not found]     ` <20160315214043.30639.75507@quark.deferred.io>
2016-03-15 21:48       ` Peter Zijlstra
     [not found]         ` <20160315223701.30639.43127@quark.deferred.io>
2016-03-16  3:36           ` Steve Muckle
2016-03-16  8:05             ` Peter Zijlstra
2016-03-16 10:02               ` Juri Lelli
2016-03-16 17:55                 ` Steve Muckle
2016-03-16 22:05                   ` Michael Turquette
2016-03-17  9:40                   ` Juri Lelli
2016-03-17 13:55                     ` Steve Muckle
2016-03-17 15:53                       ` Patrick Bellasi
2016-03-17 17:54                         ` Juri Lelli
2016-03-17 18:56                           ` Michael Turquette
2016-03-17 22:34                             ` Rafael J. Wysocki
2016-03-16 12:45               ` Rafael J. Wysocki
2016-03-16 22:03             ` Michael Turquette
2016-03-14  5:22 ` [PATCH 5/8] sched/cpufreq: pass sched class into cpufreq_update_util Michael Turquette
2016-03-15 21:25   ` Peter Zijlstra
     [not found]     ` <20160315220609.30639.67271@quark.deferred.io>
2016-03-16  3:55       ` Steve Muckle
2016-03-16  7:41       ` Peter Zijlstra
2016-03-16  8:29         ` Vincent Guittot
2016-03-16  8:53           ` Peter Zijlstra
2016-03-16  9:16             ` Vincent Guittot
2016-03-16 12:39             ` Rafael J. Wysocki
2016-03-16 13:10               ` Peter Zijlstra
2016-03-16 13:23                 ` Rafael J. Wysocki
2016-03-16 13:43                   ` Peter Zijlstra
2016-03-14  5:22 ` [PATCH 6/8] cpufreq/schedutil: sum per-sched class utilization Michael Turquette
2016-03-15 21:29   ` Peter Zijlstra
     [not found]     ` <20160315220951.30639.12872@quark.deferred.io>
2016-03-16  7:38       ` Peter Zijlstra
2016-03-16 18:20         ` Steve Muckle
2016-03-16 18:36           ` Peter Zijlstra
2016-03-16 19:12             ` Steve Muckle
2016-03-14  5:22 ` [PATCH 7/8] cpufreq: Frequency invariant scheduler load-tracking support Michael Turquette
2016-03-15 19:13   ` Dietmar Eggemann
2016-03-15 20:19     ` Michael Turquette
2016-03-15 21:32       ` Peter Zijlstra
2016-03-16 18:33       ` Dietmar Eggemann
2016-03-15 21:34   ` Peter Zijlstra
2016-03-14  5:22 ` [PATCH 8/8] sched: prefer cpufreq_scale_freq_capacity Michael Turquette
2016-03-15 19:13   ` Dietmar Eggemann
2016-03-15 20:46     ` Michael Turquette
2016-03-16 19:44       ` Dietmar Eggemann
2016-03-16 20:07         ` Peter Zijlstra
2016-03-16 21:32           ` Rafael J. Wysocki
2016-03-15 21:37   ` Peter Zijlstra
     [not found]     ` <20160315222721.30639.28332@quark.deferred.io>
2016-03-16  7:47       ` Peter Zijlstra
2016-03-16 12:41         ` Peter Zijlstra
2016-03-16  0:08 ` Rafael J. Wysocki [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=2494941.hQv4heU2vL@vostro.rjw.lan \
    --to=rjw@rjwysocki.net \
    --cc=Juri.Lelli@arm.com \
    --cc=dietmar.eggemann@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=morten.rasmussen@arm.com \
    --cc=mturquette+renesas@baylibre.com \
    --cc=mturquette@baylibre.com \
    --cc=peterz@infradead.org \
    --cc=steve.muckle@linaro.org \
    --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 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®