Linux tlp.conf: Den profilbezogenen Charakter der Parameter deutlicher machen?

Linux Betriebssystem

linrunner

Ubuntuversteher
Themenstarter
Registriert
22 Juni 2007
Beiträge
14.076
Moin,

ihr erinnert euch, mit TLP 1.9.0 wurde ein zusätzlicher Betriebsmodus namens power-saver (für maximale Energieeinsparungen) eingeführt. Die zuvor vorhandenen Modi für Netz- und Akkubetrieb wurden in performance und balanced umbenannt. Von da an wurden die Modi als „Profile“ bezeichnet.

Um dies in der tlp.conf abzubilden, wurden Parameter mit dem neuen Suffix _ON_SAV eingeführt. Die bestehenden Suffixe für die alten Modi, _ON_AC und _ON_BAT, blieben unverändert und wurden direkt den Profilen performance und balanced zugeordnet.

Das Ergebnis zeigt das folgende Beispiel:

Code:
CPU_ENERGY_PERF_POLICY_ON_AC # Dem performance-Profil zugeordnet
CPU_ENERGY_PERF_POLICY_ON_BAT # Dem balanced-Profil zugeordnet
CPU_ENERGY_PERF_POLICY_ON_SAV # Dem power-saver-Profil zugeordnet

Diesen Ansatz habe ich damals bewusst gewählt, um die Rückwärtskompatibilität mit der großen Anzahl bestehender benutzerdefinierter Konfigurationen zu gewährleisten.

Mit TLP 1.10.0 trat eine weitere Komplikation hinzu, die die Konfiguration schwerer verständlich machte. Als Reaktion auf Feature-Anfragen wurde die feste Zuordnung Netzstrom == performance und Akkustrom == balanced aufgehoben und stattdessen über TLP_PROFILE_AC und TLP_PROFILE_BAT konfigurierbar gemacht.

Kürzlich erhielt ich Rückmeldungen, dass diese Situation verwirrend ist, da die Nutzer die Suffixe _ON_AC und _ON_BAT nach wie vor eher mit den Stromquellen selbst als mit den zugewiesenen Profilen in Verbindung bringen.

Vorschlag

Es wurde folgende Alternative vorgeschlagen, die die Zuordnung zu den Profilen eindeutig kennzeichnet:

Code:
CPU_ENERGY_PERF_POLICY_ON_PRF # Dem performance-Profil zugeordnet
CPU_ENERGY_PERF_POLICY_ON_BAL # Dem balanced-Profil zugeordnet
CPU_ENERGY_PERF_POLICY_ON_SAV # Dem power-saver-Profil zugeordnet

Da die Rückwärtskompatibilität zu bestehenden Konfigurationen nicht aufgegeben werden darf, müsste TLP die alten Parameternamen zur Laufzeit den neuen zuordnen. Mit anderen Worten: eure Konfigurationsdateien bleiben unverändert; TLP konvertiert die Parameter bei jeder Ausführung. Ich halte dies für machbar. Andererseits kann ich mir keine zuverlässige, automatisierte Methode vorstellen, um die Konfigurationsdateien umzuschreiben.

Da ältere Versionen von TLP aufgrund der Release-Zyklen der Distributionen über längere Zeiträume hinweg im Einsatz bleiben, müsste die Doku-Website für alle Parameter die alten Namen neben den neuen auflisten. Das würde die Dokumentation schwerer lesbar machen.

Fragen an euch:

1. Überwiegen aus eurer Sicht die Vorteile der neuen Lösung die Nachteile?
2. Welche Vor- und Nachteile seht ihr bei der neuen Lösung für eure konkreten Anwendungsfälle?
3. Habt ihr noch weitere Anmerkungen?

Ich freue mich auf eure Meinungen. Vielen Dank im Voraus!

Auf GitHub gibts da Ganze ebenfalls: https://github.com/linrunner/TLP/issues/899
 
Zuletzt bearbeitet:
Schwierige Frage.
1. Es wäre dann verständlicher
2. Es ist ansich ok so wie es ist. Vielleicht könnte man die Dokumentation noch dahin verdeutlichen,das AC & BAT die Standartprofile sind (und bleiben).
3. Muß ich erstmal in Ruhe bebrüten

Weiß nicht so recht ob sich der ganze Aufwand lohnt. :unsure:
 
1. Überwiegen aus eurer Sicht die Vorteile der neuen Lösung die Nachteile?
Auf jeden Fall. Ich bin allerdings kein Durchschnittsnutzer, und mache unter Linux vieles viel lieber mit der Kommandozeile als mit einem GUI. Und ich lese Dokumentationen ;)

2. Welche Vor- und Nachteile seht ihr bei der neuen Lösung für eure konkreten Anwendungsfälle?
Insofern ich das als Vorteil betrachte: Ganz klar die Konfigurierbarkeit.
3. Habt ihr noch weitere Anmerkungen?
Abwärtskompatibilität ist wichtig, darf aber kein Ewigkeits-Feature sein. Überschaubarkeit der Komplexität hat in meinen Augen einen ähnlich hohen Stellenwert (das bedarf aber stets einer kontextbasierten Abwägung).
 
Hi @linrunner ich finde es cool das du diesen Schritt nach vorne in Erwägung ziehst oder nach Möglichkeiten suchst.

Hab das neulich schon prophezeit wo du dann noch mehr auf Abwärtskompatibilität warst als ich mein Config-Snippet völlig falsch gebaut hatte aufgrund dieser miss-Deutlichkeit beim Versions-Sprung.

Es führt für mich nix an den neuen Suffixen vorbei so kann man die Profile unabhängig von AC / BAT Aktiv schalten.

Persönlich würd ich das auch mit nem harten Schnitt machen, bzw., bei der Installation Ankündigen das die Config zu überarbeiten ist. Evtl. könnte man es mit einem Link machen was wie prägnant zu tun ist und halt nicht mehr diese Altlasten mitziehen oder Parameternamen zur Laufzeit neu zu ordnen. Mein Gott das sind Linux-Leute dann müssen sie ihre Config halt mal überarbeiten bei einer Neuinstallation. Tun die meisten ja eh ständig und oft.

Warnen ja, Lauftzeitskonversion nein. Abwärtskompatiblität kann auch sein das manche Parameter in der neuen Version einfach ignoriert werden bis man es überarbeitet :). Startet ja dann noch das Programm = Abwärtskompatibel.
 
Das frage ich mich ja auch.
Momentan denke ich eher nicht?
Der ganze Aufwand damit aus
Code:
CPU_ENERGY_PERF_POLICY_ON_AC
CPU_ENERGY_PERF_POLICY_ON_BAT
dann
Code:
CPU_ENERGY_PERF_POLICY_ON_PRF
CPU_ENERGY_PERF_POLICY_ON_BAL
wird.
Und dann betrifft es nur die User die die Standartprofile verändern. Denen ist dann auch zuzutrauen das sie das (meist) überblicken.
Ich habe tlp auf autoswitch 1 mit AC/Bat. Für Sonderwünsche des Users mcb einen alias s -> power-saver und b -> ballanced. Das reicht mir.
 
Der technische Aufwand, die Parameter zur Laufzeit dynamisch umzubenennen, ist gar nicht so hoch. Den Mechanismus hab ich schon vor längerer Zeit (1.4.0) eingebaut, aber nie intensiv genutzt. Sind im Grund nur Einträge in eine Datei: https://github.com/linrunner/TLP/blob/main/rename.conf

Man könnte da auch leicht noch einen Hinweistext für tlp-stat [-c | --cdiff] ergänzen. Das mache ich heute schon Features, die entfernt werden (ja, das gibt's, aber nur für wenig genutztes): https://github.com/linrunner/TLP/blob/main/deprecated.conf

Ich mache mir eher Sorgen um
  1. Die Verständlichkeit der Dokumentation, die plötzlich um sehr viele Fallunterscheidungen wächst
  2. Wie die dynamische Umbenennung von der Usern wahrgenommen wird: tlp-stat [-c | --cdiff] würde für alte Konfigurationen die neuen Parameter-Namen anzeigen - das könnte mehr verwirren als die alten Suffixe
Und dann betrifft es nur die User die die Standartprofile verändern. Denen ist dann auch zuzutrauen das sie das (meist) überblicken.
Das dürfte schon oft zutreffen. Aber wie bekommen sie es beim Paketupgrade mit? Es lesen ja auch nicht alle die Release Notes, schon gar nicht jedesmal.

bei der Installation Ankündigen das die Config zu überarbeiten ist.
Nicht jeder User macht das auf der Kommandozeile, oft kommen GUIs zum Einsatz - klick und weg...

Es bietet auch nicht jede Distri die Möglichkeit hier etwas anzuzeigen und vor allem müsste das jeder Maintainer distri-individuell ins Paket einbauen. Das wäre richtig Aufwand...

Mein Gott das sind Linux-Leute dann müssen sie ihre Config halt mal überarbeiten bei einer Neuinstallation.
Es geht mir nicht um Neuinstallation sondern um turnusmäßige Paket-Upgrades.
 
Zuletzt bearbeitet:
  • ok1.de
  • thinkstore24.de
  • ok2.de - Notebook Computer Server
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben