Lines Matching +full:performance +full:- +full:domain

1 .. SPDX-License-Identifier: GPL-2.0
8 -----------
11 the power consumed by devices at various performance levels, and the kernel
12 subsystems willing to use that information to make energy-aware decisions.
18 each and every client subsystem to re-implement support for each and every
23 The power values might be expressed in micro-Watts or in an 'abstract scale'.
26 can be found in the Energy-Aware Scheduler documentation
27 Documentation/scheduler/sched-energy.rst. For some subsystems like thermal or
30 thus the real micro-Watts might be needed. An example of these requirements can
32 Documentation/driver-api/thermal/power_allocator.rst.
36 an 'abstract scale' deriving real energy in micro-Joules would not be possible.
38 The figure below depicts an example of drivers (Arm-specific here, but the
42 +---------------+ +-----------------+ +---------------+
44 +---------------+ +-----------------+ +---------------+
47 +---------+ | +---------+
50 +---------------------+
53 +---------------------+
56 +----------+ | +---------+
58 +---------------+ +---------------+ +--------------+
59 | cpufreq-dt | | arm_scmi | | Other |
60 +---------------+ +---------------+ +--------------+
63 +--------------+ +---------------+ +--------------+
65 +--------------+ +---------------+ +--------------+
68 'performance domain' in the system. A performance domain is a group of CPUs
69 whose performance is scaled together. Performance domains generally have a
70 1-to-1 mapping with CPUFreq policies. All CPUs in a performance domain are
71 required to have the same micro-architecture. CPUs in different performance
72 domains can have different micro-architectures.
76 ------------
84 2.2 Registration of performance domains
93 the real power measurements performed for each performance state. Thus, this
97 Drivers are expected to register performance domains into the EM framework by
104 for each performance state. The callback function provided by the driver is free
107 performance domains using cpumask. For other devices than CPUs the last
120 "operating-points-v2". Each OPP entry in DT can be extended with a property
121 "opp-microwatt" containing micro-Watts power value. This OPP DT property
130 knowledge about power value for each performance state. The callback
159 2.3 Accessing performance domains
166 performance domain.
170 the performance domains, and kept in memory untouched.
172 The energy consumed by a performance domain can be estimated using the
183 .. kernel-doc:: include/linux/energy_model.h
186 .. kernel-doc:: kernel/power/energy_model.c
191 -----------------
198 performance domain in the Energy Model framework using the (fake) 'foo'
202 -> drivers/cpufreq/foo_cpufreq.c
232 29 cpu_dev = get_cpu_device(cpumask_first(policy->cpus));
237 34 /* And register the new performance domain */
238 35 em_dev_register_perf_domain(cpu_dev, nr_opp, &em_cb, policy->cpus,