First: Thermal management is only available on ACPI systems.
Second: Thermal management is buggy on a lot of machines (mostly by BIOS, it's also possible that you hit a kernel bug, see Lists how to report a kernel bug to get it solved). It is also very buggy in powersaved, if something does not work, report it ;-)
Examine the directory(ies) in
COOLING_MODEvariable satisfies your needs (set it to active or passive in your scheme_* configuration files, see below - Configuration Variables).
powersave -T. Your system should at least support a passive, even better one or more active trip points (if not, nag your vendor to export temperature limits by BIOS, it is really easy, but a lot of vendors do not care much about the ACPI spec...) If your system supports trip points you can override the temperature limits for your needs (described below in Configuration Variables).
watch -n2 powersave -T
cat /dev/zero > /dev/null(high processor usage)
powersave -fto speed and warm up your processor (
powersave -Ato switch back to dynamic mode). additionally you could close the slot to the fan (carefully...) The thermal zone(s) which temperature(s) is rapidly increasing, is(are) the interesting one. Adjust the trip points of this thermal_zone (use number from
powersave -T) using the variables described in 2.6.
Relevant configuration variables are in
/etc/powersave/thermal and the scheme configuration files
You may want to create e.g. a scheme cool/hot and activate it when
you need a cool/fast system using the kpowersave front-end or the
-x -e parameters of the
Relevant general configuration variables for each scheme: (/etc/powersave/scheme_*):
active- The hardware is preferably cooled by the fan
passive- The hardware is preferably cooled through lowering the cpu frequency and throttling. This is rarely supported by HW, See
Use these variables to override the temperature trip point settings exported
by the BIOS (in degrees Celsius, see
The number at the end of each variable defines the thermal zone for which
the value should be active. Use the
powersave -T command to find
supported thermal zones and their default trip point settings.
You might want to use the setDefaultTrippoints.sh script to fill your scheme_* conf files with your BIOS settings to easily override them.
The machine is switching on fans when active trip point temperature limits are reached.
When reaching the passive trip point, the kernel will lower the CPU's frequency (if CPU frequency switching is supported by your CPU) and throttle the CPU down when the passive trip point is exceeded.
By default the passive trip point (tp) is far above the active tps. For a cool and quiet system you may want to change this similar to above example settings. However these values are very HW dependant and you therefore have to fiddle around a bit to find out the best settings for your machine.
Try to find out which thermal zone directly refers to the processor as described above. A low value for passive should avoid fan activity but may slow down your machine if it exceeds the trip point's limit. The throttling is done by the kernel itself, the maximum throttling variable is not used in case of the passive limit is reached. Increase the active trip points values (if supported) to additionally avoid fan activity.
If a trip point is not supported by your BIOS (e.g. hot) you cannot use it -> write an email to your vendor he should support all of them, even you have a workstation.