All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/3] cpufreq: avoid redundant driver calls in schedutil
@ 2016-05-26  2:52 Steve Muckle
  2016-05-26  2:52 ` [PATCH v2 1/3] cpufreq: add resolve_freq driver callback Steve Muckle
                   ` (2 more replies)
  0 siblings, 3 replies; 25+ messages in thread
From: Steve Muckle @ 2016-05-26  2:52 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Rafael J. Wysocki, Viresh Kumar
  Cc: linux-kernel, linux-pm, Vincent Guittot, Morten Rasmussen,
	Dietmar Eggemann, Juri Lelli, Patrick Bellasi, Michael Turquette

In the series [0] I included a patch which attempted to avoid redundant driver
calls in the schedutil governor by mapping the raw required CPU frequencies to
driver frequencies. This vastly increases the likelihood of detecting a
redundant cpufreq driver call, i.e. one which will end up attempting to set the
CPU frequency to the frequency it is already running at. The redundant call can
be avoided. This is especially valuable in the case of drivers which do not
support fast path updates or if remote CPU cpufreq callbacks are implemented.

Unfortunately the implementation of this in [0] walked the frequency table
directly in schedutil. Rafael pointed out that not all drivers may have a
frequency table and that a driver callback might be implemented to return the
driver frequency associated with a particular target frequency. The driver
could then also cache this lookup and possibly use it on an ensuing
fast_switch. This series implements that approach.

Given that this change is beneficial on its own I've split it out into its own
series from the remote callback support.

[0] https://lkml.org/lkml/2016/5/9/853

Steve Muckle (3):
  cpufreq: add resolve_freq driver callback
  cpufreq: acpi-cpufreq: add resolve_freq callback
  cpufreq: schedutil: map raw required frequency to driver frequency

 drivers/cpufreq/acpi-cpufreq.c   | 56 ++++++++++++++++++++++++++++++----------
 drivers/cpufreq/cpufreq.c        | 25 ++++++++++++++++++
 include/linux/cpufreq.h          | 11 ++++++++
 kernel/sched/cpufreq_schedutil.c | 30 +++++++++++++++------
 4 files changed, 101 insertions(+), 21 deletions(-)

-- 
2.4.10

^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2016-06-01 10:50 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-26  2:52 [PATCH v2 0/3] cpufreq: avoid redundant driver calls in schedutil Steve Muckle
2016-05-26  2:52 ` [PATCH v2 1/3] cpufreq: add resolve_freq driver callback Steve Muckle
2016-05-26  6:25   ` Viresh Kumar
2016-05-30 15:31     ` Steve Muckle
2016-05-31  5:30       ` Viresh Kumar
2016-05-31 18:48         ` Steve Muckle
2016-05-31 11:14   ` Viresh Kumar
2016-05-31 18:12     ` Steve Muckle
2016-05-26  2:53 ` [PATCH v2 2/3] cpufreq: acpi-cpufreq: add resolve_freq callback Steve Muckle
2016-05-26  6:43   ` Viresh Kumar
2016-05-30 16:20     ` Steve Muckle
2016-05-31 11:38       ` Viresh Kumar
2016-05-26  2:53 ` [PATCH v2 3/3] cpufreq: schedutil: map raw required frequency to driver frequency Steve Muckle
2016-05-26  7:16   ` Viresh Kumar
2016-05-29  0:40     ` Rafael J. Wysocki
2016-05-30 10:18       ` Viresh Kumar
2016-05-30 14:25         ` Rafael J. Wysocki
2016-05-30 15:32           ` Viresh Kumar
2016-05-30 19:08             ` Rafael J. Wysocki
2016-05-31  9:02             ` Peter Zijlstra
2016-05-31  1:49           ` Wanpeng Li
2016-05-30 16:35     ` Steve Muckle
2016-06-01 10:50       ` Viresh Kumar
2016-05-27  5:41   ` Wanpeng Li
2016-05-30 16:48     ` Steve Muckle

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.