linux-doc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v6 0/2] sched: EAS changes for EM complexity and sysctl
@ 2023-10-09  6:00 Shrikanth Hegde
  2023-10-09  6:00 ` [PATCH v6 1/2] sched/topology: Remove EM_MAX_COMPLEXITY limit Shrikanth Hegde
  2023-10-09  6:00 ` [PATCH v6 2/2] sched/topology: change behaviour of sysctl sched_energy_aware based on the platform Shrikanth Hegde
  0 siblings, 2 replies; 5+ messages in thread
From: Shrikanth Hegde @ 2023-10-09  6:00 UTC (permalink / raw)
  To: mingo, peterz, vincent.guittot, vschneid
  Cc: sshegde, dietmar.eggemann, linux-kernel, qperret, srikar, mingo,
	pierre.gondois, yu.c.chen, tim.c.chen, pauld, lukasz.luba,
	linux-doc

In Brief:
[PATCH v6 1/2] sched/topology: Remove EM_MAX_COMPLEXITY limit
Since the EAS complexity was greatly reduced, bigger platforms can
handle EAS. To reflect this improvement, remove the EAS complexity check.

[PATCH v6 2/2] sched/topology: change behaviour of sysctl sched_energy_aware
based on the platform
Depending on the platform sysctl will either enable/disable EAS and NOP
in case if EAS is not supported.

Patchset contains these two patches. Second patch depends on the first
patch to be applied first.

v5->v6:
Valentin pointed out that sd_asym_cpucapacity is under rcu and to avoid
writing to sysctl if EAS is not possible. Did these two.
v4->v5:
sched_is_eas_possible missed handling of case when EM complexity was high.
Dietmar suggested that there was work done already which removes these
checks. Since it makes sched_is_eas_possible cleaner, picked up that
patch along with v4 and made it as a patchset.
Instead of using first CPU in cpu_active_mask, doing a simple loop across
all CPU in cpu_active_mask to check if there is any asymmetric CPU
capacities since it was breaking EAS capabilities over CPUSET islands.
v3->v4:
valentin suggested it would be better to consider simpler approach that
was mentioned in v2. It is a standard approach to keep the knob visible
but change how read and write are handled. Did that and Refactored the
code to use a common function in build_perf_domains and in sysctl handler.
v2->v3:
Chen Yu and Pierre Gondois both pointed out that if platform becomes
capable of EAS later, this patch was not allowing that to happen.
Addressed that by using a variable to indicate the sysctl change
and re-worded the commit message with desired behaviour,
v1->v2:
Chen Yu had pointed out that this will not destroy the perf domains on
architectures where EAS is supported by changing the sysctl.
[v1] Link: https://lore.kernel.org/lkml/20230829065040.920629-1-sshegde@linux.vnet.ibm.com/
[v2] Link: https://lore.kernel.org/lkml/20230901065249.137242-1-sshegde@linux.vnet.ibm.com/
[v3] Link: https://lore.kernel.org/lkml/20230913114807.665094-1-sshegde@linux.vnet.ibm.com/
[v4] Link: https://lore.kernel.org/lkml/20230926100046.405188-1-sshegde@linux.vnet.ibm.com/
[v5] Link: https://lore.kernel.org/lkml/20230929155209.667764-1-sshegde@linux.vnet.ibm.com/

Pierre Gondois (1):
  sched/topology: Remove EM_MAX_COMPLEXITY limit

Shrikanth Hegde (1):
  sched/topology: change behaviour of sysctl sched_energy_aware based on
    the platform

 Documentation/admin-guide/sysctl/kernel.rst |   3 +-
 Documentation/scheduler/sched-energy.rst    |  29 +---
 kernel/sched/topology.c                     | 151 ++++++++++----------
 3 files changed, 82 insertions(+), 101 deletions(-)

--
2.31.1


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

end of thread, other threads:[~2023-10-09 14:50 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-09  6:00 [PATCH v6 0/2] sched: EAS changes for EM complexity and sysctl Shrikanth Hegde
2023-10-09  6:00 ` [PATCH v6 1/2] sched/topology: Remove EM_MAX_COMPLEXITY limit Shrikanth Hegde
2023-10-09 11:08   ` Ingo Molnar
2023-10-09  6:00 ` [PATCH v6 2/2] sched/topology: change behaviour of sysctl sched_energy_aware based on the platform Shrikanth Hegde
2023-10-09 14:49   ` Valentin Schneider

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).