Conveners
Power and Thermal management MC
- Daniel Lezcano (Linaro)
- Rafael Wysocki (Intel Open Source Technology Center)
Description
The Power Management and Thermal Control microconference is about all things related to saving energy and managing heat. Among other things, we care about thermal control infrastructure, CPU, and device power-management mechanisms, energy models, and power capping.
This year has been mainly focused on the maintenance of the frameworks, resulting in cleanups setting up the scene for more improvements and connecting the user space to the kernel:
-
Thermal thresholds have been finished: https://patch.msgid.link/20240923100005.2532430-2-daniel.lezcano@linaro.org
-
Thermal library and thermal engine skeleton taking benefit of thresholds: https://patch.msgid.link/20241022155147.463475-5-daniel.lezcano@linaro.org
-
Performance QoS RFC has been posted: https://lore.kernel.org/all/20250505161928.475030-1-daniel.lezcano@linaro.org/
Embedded systems with very high performances and a higher integration, automotive systems with lifespan and reactivity constraints, push the PM frameworks to their limits.
Big topics to be addressed:
-
A performance QoS has been sent as an RFC. It apparently needs more discussion as the approach seems to not satisfy all the parties. This framework is needed to allow the user space to interact with the performance on different devices via a unified interface and co-exist with the kernel decisions.
-
The generalization of the telemetry on embedded systems to capture the energy, the power, and the temperature at high rate. How can the kernel use these data and for what ?
-
In the context of electric vehicles, power management is important to insure the largest life span of the hardware. Some operation modes, like the sentry mode, challenge several bricks of the power management like resume from suspend time.
-
The energy model can no longer be static in the kernel and must be dynamically adjusted. Depending on the running scenario, there can be a significant gap between the computed and real power consumption, leading to inappropriate kernel decisions.
-
Embedded systems are looking for a multi suspend states mechanism like a system-wide C-state. It requires more discussion, which were already initiated at the last LPC.
-
The sensor aggregation did not reach a consensus because there is a different perception on the goal of the aggregation and its usage, resulting in a different implementation
Key attendees:
- Rafael J. Wysocki
- Lukasz Luba
- Vincent Guittot
- Saravana Kannan
- Sriniva Pandruvada
- Ulf Hansson
- Deepti Jaggi
- Prasad Sodagudi
- Manaf Meethalavalappu Pallikunhi
- Tudor Ambarus
- Amit Kucheria
- Srinivas Kandagatla
-
Saravana Kannan, Ulf Hansson (Linaro)12/12/2025, 15:05
For DT based platforms fw_devlink allows us to track supplier/consumer dependencies, which helps to avoid having drivers returning -EPROBE_DEFER, while they probe their devices. Moreover, fw_devlink provides the so called ->sync_state() support, allowing a driver for a supplier device to receive a notification through its ->sync_state() callback, when all its consumer devices have been probed...
Go to contribution page -
Daniel Lezcano (Linaro)12/12/2025, 15:25
Even though the thermal framework has evolved significantly over the past five years, several limitations and open issues remain. The step_wise governor still struggles to strike a better trade-off between performance and avoiding interrupt storms, and thermal-zone mitigations tend to stop too early during system suspend. Moreover, newer hardware provides fine-grained temperature telemetry...
Go to contribution page -
Lukasz Luba12/12/2025, 15:45
The Energy Model (EM) framework is capable updating the model's information. The Thermal framework is aware of the SoC's and internals' (CPUs, GPU, etc) temperature. We can create a solution which updates the power values in the EM based on increased static power (leakage) caused by the heat. The presentation will go through a proposed design for that.
Go to contribution page -
Daniel Lezcano (Linaro)12/12/2025, 16:05
At the last LPC, we discussed PM QoS. However, the implementation proposed this year did not reach consensus; the semantics of PM QoS are perceived differently.
The proposal was for in-kernel actors and userspace to vote on a constraint. Once a constraint is set, if the userspace process exits, the constraint is automatically removed provided no other actors hold the same constraint. When...
Go to contribution page -
Kevin Hilman (BayLibre), Ulf Hansson (Linaro)12/12/2025, 17:00
Since last LPC in Vienna, we have continued to explore how to add support for multiple system-wide low power-states to the Linux kernel. A series [1] has been posted that suggests us to add a user-space interface, to allow a system-wakeup latency constraint to be specified. The series also includes deployment for how the latency-constraint can be taken into account during s2idle and especially...
Go to contribution page -
Srinivas Pandruvada12/12/2025, 17:20
While many Linux distributions don't officially support hibernation, OEMs must validate thousands of successful hibernation cycles during hardware certification. This creates significant testing bottlenecks, particularly on multi-CPU systems with complex device configurations where failures can occur intermittently, requiring days of continuous testing to reproduce edge cases.
Go to contribution page
Some... -
Amit Kucheria12/12/2025, 17:40
The same processor can be made available with different thermal junction (Tj) temperature thresholds by changing packaging characteristics.
Just like voltage and frequency operating points are support by
Go to contribution pageopp-supported-hwproperty in DT, introduce a similar property for difference in thermal properties of an SoC. -
Amit Kucheria12/12/2025, 18:00
Modern SoCs ship with an increasing number of specialized coโprocessors that do not run Linux: modems, NPUs, GPUs, DSPs, and video accelerators, to name a few. While Linux typically controls the overall system power and performance policy, these coโprocessors often have their own firmware, internal performance states, and vendorโspecific control interfaces. We want to explore how Linux systems...
Go to contribution page -
Daniel Lezcano (Linaro)
Introduce Power and Thermal Management Microconference
Go to contribution page -
Daniel Lezcano (Linaro)
Introduce Power and Thermal Management Microconference
Go to contribution page -
Ulf Hansson (Linaro)
On battery driven platforms, flash-based storage devices like NVMe/UFS/eMMC/SD are being used in a combination with a carefully designed support for platform-power-management. Yet, a flash-based storage device typically contributes significantly to the energy-budget for a platform. That means it's highly important to manage them in an optimized way, otherwise we may waste a lot of energy or in...
Go to contribution page -
Ulf Hansson (Linaro)
On battery driven platforms, flash-based storage devices like NVMe/UFS/eMMC/SD are being used in a combination with a carefully designed support for platform-power-management. Yet, a flash-based storage device typically contributes significantly to the energy-budget for a platform. That means it's highly important to manage them in an optimized way, otherwise we may waste a lot of energy or in...
Go to contribution page -
Ulf Hansson (Linaro)
Last time at LPC in Vienna, we discussed whether it would be feasible to try to evolve the support for s2idle, allowing a legacy platform/FW that supports only s2ram to make use of s2idle too. To be clear, in this context we are not able to make an update of the FW (it's not always possible to convince vendors to make an update), so the target have been to make adjustments on the Linux kernel...
Go to contribution page -
Ulf Hansson (Linaro)
Last time at LPC in Vienna, we discussed whether it would be feasible to try to evolve the support for s2idle, allowing a legacy platform/FW that supports only s2ram to make use of s2idle too. To be clear, in this context we are not able to make an update of the FW (it's not always possible to convince vendors to make an update), so the target have been to make adjustments on the Linux kernel...
Go to contribution page