# Thermal mitigation
Source: [https://docs.qualcomm.com/doc/80-88500-4/topic/57_Thermal_mitigation.html](https://docs.qualcomm.com/doc/80-88500-4/topic/57_Thermal_mitigation.html)
The thermal engine implements thermal mitigation measures to prevent damage and failure
when the device overheats.
Table : Thermal engine mitigation devices. The table recommends adjustments for thermal mitigation.
| Mitigation device | Description |
| --- | --- |
| cpuX |
- Adjustment of maximum allowed operating frequency per cluster
- For Qualcomm® Kryo™ CPU Silver cluster mitigation, use cpu0
- For Kryo Gold cluster mitigation, use cpu4
- For Kryo Prime core, use cpu7
|
| gpu | Adjustment of maximum allowed operating frequency |
| hotplug\_X | Takes specific core offline |
| shutdown | Safety mechanism to ensure that the CPU cores shut off before junction
temperature limits are exceeded |
| lcd | Adjustment of maximum backlight intensity |
| battery | Adjustment of maximum allowable charge rate |
| npu | Adjustment of maximum allowed operating frequency |
## Thermal mitigation algorithms
The thermal engine supports both monitor and dynamic thermal management (DTM) algorithms in
the thermal configuration file.
Note: DTM is strongly recommended over monitor for CPU and
GPU mitigation because it relieves the tuning effort, boosts performance, and strictly
maintains the temperature to the use case-specific set point.
- DTM – algo\_type ss
- Determines the temperature at which the device should be maintained, and the
algorithm dynamically throttles the use case-specific action (CPU frequency)
accordingly
- Supports skin temperature and on-die temperature control
- Requires less tuning effort than monitor
- Enables stricter enforcement of temperature limits
- Works only for CPU and GPU mitigation (such as lowering maximum frequencies)
- Supports the threshold changes via set\_point and set\_point\_clr in the
thermal-engine.conf file
- Monitor – algo\_type monitor
- Supports thermal mitigation for LCD, modem, and battery
- Determines a series of temperature thresholds and a precise corresponding action
per threshold
- Not recommended for CPU and GPU mitigation, as it requires extensive tuning to
find each set point
- Supports the threshold changes via thresholds and threshold\_clr in the
thermal-engine.conf file
## Dynamic algorithm example – estimated response

- When the temperature crosses the set point (75°C), reduce the performance until the
temperature stabilizes
- Polling mode is enabled based on the sampling parameter defined on the rule
- Reduce the performance while the temperature is above the threshold. As the temperature
falls below the set point (75°C), the maximum allowed frequency will be able to ramp back
up
- If the temperature drops further below the set point clear (50°C), the Interrupt mode is
re-enabled
- Used only for CPU/GPU control
**Parent Topic:** [Software thermal management](https://docs.qualcomm.com/doc/80-88500-4/topic/52_Software_thermal_management.html)
Last Published: Aug 18, 2023
[Previous Topic
User space thermal engine](https://docs.qualcomm.com/bundle/publicresource/80-88500-4/topics/56_User_space_thermal_engine.md) [Next Topic
Debug](https://docs.qualcomm.com/bundle/publicresource/80-88500-4/topics/58_Debug.md)