From Fedora Project Wiki
(Initial draft)
 
(Add trackers)
 
(13 intermediate revisions by 3 users not shown)
Line 22: Line 22:


== Summary ==
== Summary ==
Better thermal management and peak performance on Intel CPUs by including thermald and dptfxtract in the default install.  
Better thermal management and peak performance on Intel CPUs by including thermald in the default install.


== Owner ==
== Owner ==
Line 43: Line 43:


== Current status ==
== Current status ==
* Targeted release: [[Releases/31 | Fedora 31 ]]  
[[Category:ChangeAcceptedF33]]
[[Category:SelfContainedChange]]
* Targeted release: [[Releases/33 | Fedora 33 ]]  
* Last updated: <!-- this is an automatic macro — you don't need to change this line -->  {{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY2}}  
* Last updated: <!-- this is an automatic macro — you don't need to change this line -->  {{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY2}}  
<!-- After the change proposal is accepted by FESCo, tracking bug is created in Bugzilla and linked to this page  
<!-- After the change proposal is accepted by FESCo, tracking bug is created in Bugzilla and linked to this page  
Line 52: Line 54:
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
-->
-->
* Tracker bug: <will be assigned by the Wrangler>
* FESCo issue: [https://pagure.io/fesco/issue/2437 #2437]
* Release notes tracker: <will be assigned by the Wrangler>
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1861499 #1861499]
* Release notes tracker: [https://pagure.io/fedora-docs/release-notes/issue/541 #541]


== Detailed Description ==
== Detailed Description ==


Modern Intel-based systems provide sensors and methods to monitor and control temperature of its CPUs. The Thermal daemon will use those sensors to monitor the temperature and use the best available method to keep the CPU in the right temperature envelop. On certain systems this is needed to reach the maximal performance.  
Modern Intel-based systems provide sensors and methods to monitor and control temperature of its CPUs. The Thermal daemon will use those sensors to monitor the temperature and use the best available method to keep the CPU in the right temperature envelop. On certain systems this is needed to reach the maximal performance. thermald will for example use the PPCC power table to set power limits (when available, see for example https://www.mail-archive.com/kernel-packages@lists.launchpad.net/msg411614.html). This is for example the case on Ice Lake, where thermald can increase the performance of the out-of-the-box behaviour of Fedora.
 
Not strictly necessary, but *further* improvements can be achieved by using per-model thermald configurations. The most straight forward way of using those is for the user to install dptfxtract (available from rpmfusion). At least parts of what dptfxtract can already do may be integrated into thermald in the future thanks to the reverse engineering work done by Matthew Garret (see https://github.com/intel/thermal_daemon/tree/mg_patches_test, https://github.com/intel/thermal_daemon/pull/224). Should the reverse engineering effort be merged, or if the user installs dptfxtract, then they can expect a performance boost on some machines.
 
Theoretically one could ship appropriate per-machine configurations as a separate package (or inside thermald). However, this is not part of the proposal for a number of reasons:
1. It is not clear how the configuration data can be collected
2. We do not currently have an implementation to load such configuration data
3. This may become obsolete with if the reverse-engineering effort continues and is merged (or picked up by Fedora)


For a more details explanation please consult Intel's [https://01.org/linux-thermal-daemon/documentation/introduction-thermal-daemon introduction] to thermald.
For a more details explanation please consult Intel's [https://01.org/linux-thermal-daemon/documentation/introduction-thermal-daemon introduction] to thermald.
Line 91: Line 101:
-->
-->


Better out-of-the-box experience due to improved cooling methods and performance on Intel systems.
Better out-of-the-box experience due to improved cooling methods and performance on Intel systems. This affects many modern laptops (e.g. the Ice Lake platform). On affected machines, Fedora would continue to have poorer performance compared to other distributions.


== Scope ==
== Scope ==
* Proposal owners:  
* Proposal owners:  
  - Include the thermald package in the default Workstation install
  - Include the thermald package in the default Workstation install
- Package the [https://github.com/intel/dptfxtract dptfxtract] tool
- Optionally provide patches for thermald to be able to read hardware specific configuration data
- Optionally collect hardware specific configuration data and ship it


* Other developers: N/A (not a System Wide Change)  
* Other developers: N/A (not a System Wide Change)  
Line 113: Line 120:
== How To Test ==
== How To Test ==


Install the packages and use e.g. turbostat to monitor the performance.
Install the packages and use e.g. turbostat to monitor the performance. Improvements may only be visible if the non-free dptfxtract package is also installed.


<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
Line 130: Line 137:


<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "Revert the shipped configuration".  Or it might not (e.g. rebuilding a number of dependent packages).  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
* Contingency mechanism: Don't ship both packages by default <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Contingency mechanism: Don't ship package by default <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
<!-- When is the last time the contingency mechanism can be put in place?  This will typically be the beta freeze. -->
* Contingency deadline: N/A (not a System Wide Change)  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Contingency deadline: N/A (not a System Wide Change)  <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
<!-- Does finishing this feature block the release, or can we ship with the feature in incomplete state? -->
<!-- Does finishing this feature block the release, or can we ship with the feature in incomplete state? -->
* Blocks release? N/A (not a System Wide Change), Yes/No <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Blocks release? N/A (not a System Wide Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
* Blocks product? product <!-- Applicable for Changes that blocks specific product release/Fedora.next -->
* Blocks product? product <!-- Applicable for Changes that blocks specific product release/Fedora.next -->


Line 148: Line 155:
Release Notes are not required for initial draft of the Change Proposal but has to be completed by the Change Freeze.  
Release Notes are not required for initial draft of the Change Proposal but has to be completed by the Change Freeze.  
-->
-->
[[Category:ChangePageIncomplete]]
<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
<!-- The Wrangler announces the Change to the devel-announce list and changes the category to Category:ChangeAnnounced (no action required) -->
<!-- After review, the Wrangler will move your page to Category:ChangeReadyForFesco... if it still needs more work it will move back to Category:ChangePageIncomplete-->
<!-- Select proper category, default is Self Contained Change -->
[[Category:SelfContainedChange]]
<!-- [[Category:SystemWideChange]] -->

Latest revision as of 19:00, 28 July 2020


Better Thermal Management for the Workstation

Summary

Better thermal management and peak performance on Intel CPUs by including thermald in the default install.

Owner

  • Product: Workstation
  • Responsible WG: Workstation


Current status

Detailed Description

Modern Intel-based systems provide sensors and methods to monitor and control temperature of its CPUs. The Thermal daemon will use those sensors to monitor the temperature and use the best available method to keep the CPU in the right temperature envelop. On certain systems this is needed to reach the maximal performance. thermald will for example use the PPCC power table to set power limits (when available, see for example https://www.mail-archive.com/kernel-packages@lists.launchpad.net/msg411614.html). This is for example the case on Ice Lake, where thermald can increase the performance of the out-of-the-box behaviour of Fedora.

Not strictly necessary, but *further* improvements can be achieved by using per-model thermald configurations. The most straight forward way of using those is for the user to install dptfxtract (available from rpmfusion). At least parts of what dptfxtract can already do may be integrated into thermald in the future thanks to the reverse engineering work done by Matthew Garret (see https://github.com/intel/thermal_daemon/tree/mg_patches_test, https://github.com/intel/thermal_daemon/pull/224). Should the reverse engineering effort be merged, or if the user installs dptfxtract, then they can expect a performance boost on some machines.

Theoretically one could ship appropriate per-machine configurations as a separate package (or inside thermald). However, this is not part of the proposal for a number of reasons:

1. It is not clear how the configuration data can be collected
2. We do not currently have an implementation to load such configuration data
3. This may become obsolete with if the reverse-engineering effort continues and is merged (or picked up by Fedora)

For a more details explanation please consult Intel's introduction to thermald.

Benefit to Fedora

Better out-of-the-box experience due to improved cooling methods and performance on Intel systems. This affects many modern laptops (e.g. the Ice Lake platform). On affected machines, Fedora would continue to have poorer performance compared to other distributions.

Scope

  • Proposal owners:
- Include the thermald package in the default Workstation install
  • Other developers: N/A (not a System Wide Change)
  • Release engineering:
  • Policies and guidelines: N/A (not a System Wide Change)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

N/A (not a System Wide Change)

How To Test

Install the packages and use e.g. turbostat to monitor the performance. Improvements may only be visible if the non-free dptfxtract package is also installed.

N/A (not a System Wide Change)

User Experience

- Better performance on certain hardware
- Better cooling of CPUs on certain hardware

Dependencies

N/A (not a System Wide Change)

Contingency Plan

  • Contingency mechanism: Don't ship package by default
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change)
  • Blocks product? product

Documentation

N/A (not a System Wide Change)

Release Notes