TLP - ustawienia oszczędzania energii dla Ubuntu

Z ThinkPad-Wiki

To jest stara wersja. Czas edycji: 21:56, 7 maja 2011 przez Linrunner (Dyskusja | Wkład).
Przejdź do: nawigacja, szukaj

Spis treści

Czym jest TLP?

Z każdym wydaniem Ubuntu wprowadzane są kolejne usprawnienia w zakresie zużycia energii w laptopach, dzięki czemu już przy prostej standardowej instalacji można osiągnąć całkiem dobre wyniki zużycia energii.

Pozostałe możliwości oszczędzania energii można łatwo znaleźć w internecie za pomocą wyszukiwarki. Wybór i zastosowanie ustawień odpowiednich dla własnego sprzętu i wersji Ubuntu spośród bogactwa wpisów na wiki, blogach i forach wymaga jednak od użytkownika często zaawansowanej wiedzy o Linuksie i Ubuntu.

Tu z pomocą ma przyjść TLP, ucząc Ubuntu niuansów oszczędzania energii, bez konieczności posiadania przez użytkownika szczegółowej wiedzy.

TLP nie zastępuje istniejącego zarządzania energią w Ubuntu, lecz je uzupełnia. W tym celu TLP jest wywoływany przez zarządzanie energią Ubuntu przy starcie systemu i przy każdej zmianie źródła zasilania, a następnie dokonuje swoich ustawień.

TLP nadaje się do wszystkich laptopów, jednak ustawianie progów ładowania akumulatora jest dostępne tylko dla ThinkPadów IBM/Lenovo.

Odpowiedzi na dalsze pytania dotyczące TLP znajdziesz w TLP FAQ.

Funkcje

Ustawienia zależne od źródła zasilania

Poniższe ustawienia, obejmujące również istotne zalecenia narzędzia Powertop, są wprowadzane automatycznie w zależności od aktywnego źródła zasilania (akumulator/zasilacz):

  • Tryb laptopa jądra (Kernel Laptop Mode) i limity czasu zapisu buforów systemu plików z powrotem na dysk twardy
  • Poziom Advanced Power Management dla każdego dysku twardego
  • Planista I/O dla każdego dysku twardego
  • SATA Aggressive Link Power Management (ALPM)
  • PCI Express Active State Power Management (PCIe ASPM); od Ubuntu 10.10 lub jądra 2.6.35
  • Częstotliwość taktowania Radeon; od Ubuntu 10.10 lub jądra 2.6.35 (nie fglrx)
  • Tryb oszczędzania energii WLAN (WiFi) dla kart ze sterownikiem iwlagn (Intel 5100, 5300, ...); od Ubuntu 10.04 lub jądra 2.6.32
  • Wake on LAN (tylko wyłączanie)
  • Tryb oszczędzania energii audio dla dźwięku Intel HDA i AC97
  • USB Auto Suspend z możliwością czarnej listy urządzeń; urządzenia wejściowe są automatycznie pomijane
  • Ustawienia PHC dla undervoltingu (wymaga jądra z łatką PHC)
  • Progi ładowania akumulatora **ThinkPad
  • Wyłączanie napędu optycznego we wnęce wymiennej lub UltraBay (przy przejściu na zasilanie bateryjne)

Uwaga **ThinkPad: tak oznaczone ustawienia wymagają tp-smapi i dlatego działają tylko w ThinkPadach, nie działają jednak w seriach SL, L i Edge ani w X100e.

Ustawienia przy starcie systemu

  • Zintegrowane Bluetooth, WLAN i WWAN (UMTS) można selektywnie wyłączać przy starcie systemu lub przed jego zamknięciem
  • Stan włączenia/wyłączenia zintegrowanego WWAN jest automatycznie przywracany po suspend i hibernacji

Zakres działania

Opcje konfiguracji, których TLP celowo nie uwzględnia, opisano w TLP FAQ.

Instalacja

Wymagania

  • Własne ustawienia lub skrypty oszczędzania energii, np. w /etc/rc.local, są dezaktywowane, w przeciwnym razie należy spodziewać się trudnych do przewidzenia rezultatów.
  • Pakiet laptop-mode-tools nie jest zainstalowany.

Ubuntu

Do źródeł pakietów Ubuntu należy dodać TLP-PPA poleceniem

sudo add-apt-repository ppa:linrunner/tlp
sudo apt-get update

Instalacja pakietów - od Ubuntu 10.04

  • tlp (PPA)

Wskazówka (tylko Ubuntu 10.04): pakiet Ubuntu pm-utils-powersave-policy jest automatycznie odinstalowywany, ponieważ może zakłócać działanie TLP.

  • tp-smapi-dkms (universe) - opcjonalny **ThinkPad, umożliwia ustawianie progów ładowania akumulatora oraz rozszerzone wskazania stanu.
  • smartmontools (main) - opcjonalnie, umożliwia wyświetlanie danych SMART dysku/dysków przez tlp-stat.
  • ethtool (main) - opcjonalny, umożliwia wyłączenie Wake On LAN.

Debian

Poniższe kroki należy, jak zwykle w Debianie, wykonać w powłoce roota:

  • Jako źródło pakietów używane jest TLP-PPA dla Ubuntu 10.04. W tym celu należy dodać następującą linię w /etc/apt/sources.list
deb http://ppa.launchpad.net/linrunner/tlp/ubuntu lucid main
  • Dodanie klucza publicznego TLP-PPA
apt-key adv --keyserver gpg-keyserver.de --recv-keys 02D65EFF
  • Aktualizacja źródeł
apt-get update

Instalacja pakietów - Debian 6.0 „Squeeze”

  • tlp (PPA)
  • tp-smapi-dkms (main) - opcjonalny **ThinkPad, umożliwia ustawianie progów ładowania akumulatora i rozszerzone wyświetlanie stanu.
  • smartmontools (main) - opcjonalnie, umożliwia wyświetlanie danych SMART dysku/dysków przez tlp-stat.
  • ethtool (main) - opcjonalny, umożliwia wyłączenie Wake On LAN.

Arch Linux

TLP dla Arch Linux jest dostępny w AUR. Instalacja jest opisana w Arch Wiki.

Uruchomienie

Po instalacji TLP uaktywni się automatycznie przy następnym uruchomieniu systemu. Alternatywnie można go uruchomić od razu z wiersza poleceń za pomocą

 sudo tlp start

Konfiguracja

  • wszystkie ustawienia TLP znajdują się w /etc/default/tlp: szczegółowy opis.
  • Zmiany można aktywować bez ponownego uruchamiania systemu za pomocą
sudo tlp start

Polecenia terminala

Debian: wszystkie opisane w tym rozdziale polecenia zaczynające się od sudo należy - jak zwykle w Debianie - wykonywać bez sudo w powłoce roota.

wifi, bluetooth, wwan

Zintegrowane WLAN, Bluetooth i WWAN (UMTS) można w terminalu włączać, wyłączać i przełączać, a po wywołaniu bez parametrów sprawdzać ich stan:

wifi [ on | off | toggle ]

Wskazówka: w przypadku kart Intel 2200bg i 2915abg polecenie należy wywołać z sudo.

bluetooth [ on | off | toggle ]
wwan [ on | off | toggle ]

Debian: polecenia wifi, bluetooth i wwan należy wykonywać w powłoce roota.

Wskazówka: warunkiem działania pokazanych funkcji jest obsługa przez sprzęt frameworka rfkill jądra (wyjątek: Intel 2200/2915). Aby to sprawdzić, wpisz

rfkill list

i sprawdź, czy żądana klasa urządzeń wifi/bluetooth/wwan pojawia się na liście (w Debianie należy wcześniej zainstalować pakiet rfkill).

ThinkPad serii SL, L i Edge, X100e: Bluetooth i WWAN nie dają się przełączać do Ubuntu 10.04 włącznie z powodu braku obsługi rfkill, ponieważ moduł jądra thinkpad_acpi się nie ładuje; od 10.10 to ograniczenie nie występuje.

tlp-stat

Utworzenie raportu o stanie wszystkich aktywnych ustawień:

sudo tlp-stat

tlp

Aktywacja/test ustawień dla bieżącego źródła zasilania

sudo tlp start

Aktywacja ustawień dla pracy na akumulatorze

(niezależnie od faktycznego, bieżącego źródła zasilania)

sudo tlp bat

Aktywacja ustawień dla pracy na zasilaczu

(niezależnie od faktycznego, bieżącego źródła zasilania)

sudo tlp ac

Aktywacja ustawień oszczędzania energii dla WLAN

(tylko dla obsługiwanych adapterów lub jąder)

sudo tlp wifi

Aktywacja auto suspend dla wszystkich podłączonych urządzeń USB

(z wyjątkiem urządzeń z czarnej listy i urządzeń wejściowych)

sudo tlp usb

Wyłączanie napędu optycznego we wnęce wymiennej/Ultrabay

sudo tlp bayoff

Wskazówki dotyczące bayoff:

  • Napęd można ponownie włączyć za pomocą dźwigni zwalniającej wnęki wymiennej/Ultrabay, a w nowszych modelach przyciskiem wysuwania na napędzie.
  • Wszystkie inne urządzenia we wnęce wymiennej/UltraBay, w szczególności dyski twarde, nie są wyłączane tym poleceniem.

Rozładowywanie akumulatora podczas pracy na zasilaczu **ThinkPad

Służy do rekalibracji.

sudo tlp discharge [ BAT0 | BAT1 ]

Z parametrem BAT0 (domyślnie) rozładowywany jest akumulator główny, z BAT1 akumulator UltraBay. Polecenie na bieżąco wyświetla pozostałą pojemność i czas rozładowania. Rozładowywanie można w każdej chwili przerwać za pomocą Ctrl+C.

Uwagi:

  • polecenie działa tylko z podłączonym zasilaczem
  • podczas rozładowywania można normalnie pracować na ThinkPadzie
  • w razie problemów z tą funkcją prosimy zapoznać się także z TLP FAQ

Tymczasowa zmiana progów ładowania akumulatora **ThinkPad

Progi ładowania zostaną ustawione na podane wartości. Zakres wartości od 1 do 100; PRÓG_START musi być mniejszy niż PRÓG_STOP. (tylko dla ThinkPadów, nie dla serii SL, L i Edge).

sudo tlp setcharge START_SCHWELLE STOP_SCHWELLE [ BAT0 | BAT1 ]

Zmienione progi ładowania akumulatora zostaną przy następnym uruchomieniu systemu ponownie ustawione na wartości zdefiniowane w ustawieniach.

Tymczasowe ustawienie progów ładowania akumulatora na maksimum **ThinkPad

Progi ładowania zostaną ustawione na 96/100%. Służy to do pełnego naładowania akumulatora (tylko dla ThinkPadów, nie dla serii SL, L i Edge).

sudo tlp fullcharge [ BAT0 | BAT1 ]

Zmienione progi ładowania akumulatora zostaną przy następnym uruchomieniu systemu ponownie ustawione na wartości zdefiniowane w ustawieniach.

Rekalibracja akumulatora **ThinkPad

Uwaga: proces rekalibracji sprawia, że elektronika w akumulatorze prawidłowo podaje stan naładowania i pojemność. Zużyte lub uszkodzone ogniwa akumulatora nie zostaną w ten sposób naprawione.

Aby przeprowadzić rekalibrację, należy raz całkowicie rozładować akumulator przy zasilaczu sieciowym poleceniem

sudo tlp discharge [ BAT0 | BAT1 ]

Następnie należy naładować akumulator do 100% poleceniem

sudo tlp fullcharge [ BAT0 | BAT1 ]

Disk ID

tlp diskid

Ustala identyfikatory dysków do podania w parametrze konfiguracyjnym DISK_DEVICES.

Raport stanu

sudo tlp stat

Odpowiada poleceniu tlp-stat.

run-on-ac, run-on-bat

Warunkowe uruchamianie poleceń w zależności od aktywnego źródła zasilania:

run-on-ac  befehl parameter ...
run-on-bat befehl parameter ...

befehl zostanie wykonane tylko wtedy, gdy aktywne jest odpowiednie źródło zasilania (-ac dla zasilacza, -bat dla akumulatora). Można tego użyć np. w „System -> Preferencje -> Programy startowe”.

Szczegóły wszystkich poleceń można również uzyskać poleceniem:

man <befehl>

Licencja

TLP jest licencjonowany na podstawie GPL w wersji 2. Źródła są dostępne w PPA (tlp_VERSION.tar.gz).

Portowanie

Dotychczas TLP jest dostępny dla Ubuntu, Debiana i Arch Linuksa. Wszystkie informacje potrzebne do dostosowania TLP do innych dystrybucji lub utworzenia pakietów znajdują się w dokumentacji programu TLP.

Wsparcie

FAQ

Pierwszym miejscem, do którego warto się zwrócić w razie pytań i problemów, jest TLP FAQ.

Forum Thinkpad

W przypadku dalszych pytań i problemów istnieje wątek na forum Thinkpad (oczywiście użytkownicy innych marek są tam również mile widziani). Przy zapytaniach należy zawsze podawać pełne wyjście polecenia (możliwie podczas pracy na akumulatorze)

egrep -v '^#|^\s*$' /etc/default/tlp
sudo tlp-stat

za pośrednictwem http://paste.ubuntuusers.de.

Tryb trace

W przypadku złożonych błędów można aktywować tryb trace za pomocą następującego ustawienia w /etc/default/tlp:

TLP_DEBUG="run rf pm usb sysfs"

Zebrane informacje można w każdej chwili odczytać poleceniem

grep "tlp" /var/log/debug

odczytać,

Changelog

Wersja 0.3.0.201 - 07.05.2011

TLP dla Arch Linuksa:

  • Wersja 0.3.0.201 nie zawiera w porównaniu z 0.3.0 żadnych nowych funkcji; wprowadzono jedynie dostosowania, które mają ułatwić przeniesienie na inne dystrybucje Linuksa.

Koniec wsparcia dla Ubuntu 9.10:

  • Wydanie usunięto z opisu, ponieważ zakończył się okres wsparcia. Pakiet pozostaje w PPA, jednak nowe wersje TLP dla 9.10 nie będą już udostępniane.

Wersja 0.3.0 - 19.03.2011

Dedykowane ofiarom katastrofy w Japonii.

Poprawki błędów:

  • Wyłączanie WWAN/UMTS przed wstrzymaniem (obejście problemu jądra lub Network Managera)

Nowe funkcje:

  • SCHED_POWERSAVE: przy niskim obciążeniu zmniejszanie liczby używanych rdzeni procesora
  • DISK_DEVICES: dyski można podawać za pomocą ID z /dev/disk/by-id (egalus)
  • tlp diskid: wyświetlanie powyższych ID
  • DISK_IOSCHED: określanie planisty I/O dla każdego dysku (egalus)
  • PCIe ASPM
  • START_CHARGE_THRESH: obsługa wyjątku dla modeli ThinkPad Edge obsługujących tp-smapi – możliwy tylko górny próg ładowania
  • Wpływanie na taktowanie Radeona – przez /sys/class/drm/card*/device/power_profile

Pakietowanie:

  • Uruchamianie systemu zmieniono z Upstart na skrypt SysV – /etc/init.d/tlp
  • Natty

Uzupełnienie 20.03.2011 - wersja pakietu 0.3.0-2

Poprawki błędów dla Debiana:

  • DEVICES_TO_DISABLE_ON_STARTUP: wyłączanie urządzeń bezprzewodowych przy starcie systemu działa teraz niezawodnie

Wersja 0.2.8 - 27.09.2010

Nowe funkcje:

  • Wsparcie dla Ubuntu 10.10 Maverick
  • DISK_APM_LEVEL: można wpisać wartości dla kilku dysków (Stifflers_mom)
  • USB_AUTOSUSPEND: urządzenia wejściowe są automatycznie wyłączane z autosuspend, tzn. wpis w USB_BLACKLIST nie jest już potrzebny
  • tlp-stat: na liście urządzeń USB wyświetlany jest odpowiedni sterownik

Wersja 0.2.7 - 11.09.2010

Poprawki błędów:

  • USB Autosuspend i tlp-stat nie obejmują wszystkich urządzeń
  • Bug #15: przerwanie tlp-stat przy Intel 2200bg (agape)
  • Bug #16: PHC_CONTROLS jest teraz ustawiane dla wszystkich rdzeni/procesorów (pumpe et al.)

Nowe funkcje:

  • Progi ładowania: nowe polecenie tlp setcharge ustawia progi tymczasowe (crishu)
  • DEVICES_TO_DISABLE_ON_STARTUP: moment wyłączenia Bluetootha przesunięto przed logowanie użytkownika
  • USB Autosuspend: dodatkowo wywoływane po każdym nawiązaniu połączenia WWAN

Wersja 0.2.6 - 12.06.2010

Poprawki błędów:

  • Bug #14: okno logowania pojawia się z dużym opóźnieniem przy USB_AUTOSUSPEND=1.

Nowe funkcje:

  • tlp fullcharge: pełne naładowanie akumulatora niezależnie od ustawionych progów ładowania.
  • tlp-stat wyświetla informację, gdy oszczędzanie energii dla karty Wi-Fi nie jest możliwe: „off (not supported)”.

Wersja 0.2.5 (-0ubuntu2) - 17.05.2010

Poprawka błędów tylko dla Ubuntu 10.04:

  • Pakiet pm-utils-powersave-policy jest od teraz automatycznie usuwany podczas instalacji TLP.

Tło: z powodu błędu pm-utils-powersave-policy „dezaktywuje” funkcje oszczędzania energii TLP, gdy kontroler SATA w BIOS-ie jest ustawiony na tryb „Compatible” (zgłoszenie błędu: LP# 514881). Ponieważ funkcjonalność pm-utils-powersave-policy jest w pełni pokryta przez TLP, pakiet można bez problemu usunąć.

Wersja 0.2.5 - 03.05.2010

Poprawki błędów:

  • Bug #10: USB_AUTOSUSPEND=1 z pustą USB_BLACKLIST powoduje znacznie wydłużony czas uruchamiania.
  • Bug #11: komunikat o błędzie tlp-stat przy dyskach SSD bez APM.

Nowe funkcje:

  • #12: przełączanie bluetooth/wifi/wwan (thatgui).
  • Tryb USB Autosuspend domyślnie włączony.
  • Oszczędzanie energii Wi-Fi dla Ubuntu 10.04 (jądro 2.6.32) znów możliwe (tylko Intel 5x00).
  • Dostosowania dla Lucid.

Wersja 0.2.4 - 14.03.2010

Poprawki błędów:

  • Bug #8: ostrzeżenie tlp-stat „...No such file or directory”, gdy nie ma ani wewnętrznego Bluetootha, ani WWAN.
  • Bug #9: wyłączony napęd Ultrabay po suspend/resume jest ponownie włączony i zostaje rozpoznany dopiero po wyjęciu i ponownym włożeniu.

Nowe funkcje:

  • Rozładowanie akumulatora podczas pracy na zasilaczu (tlp discharge).
  • run-on-ac, run-on-bat.

Wersja 0.2.3 - 07.03.2010

Poprawki błędów:

  • Bug #7: nośnik nie jest odmontowywany (umount) przed wyłączeniem napędu Ultrabay; brak rozpoznawania napędów optycznych != /dev/sr0.

Wersja 0.2.2 - 06.03.2010

Poprawki błędów:

  • Bug #3: Bluetooth nie daje się już włączyć, jeśli został wcześniej wyłączony przy starcie systemu. Rozwiązanie to tylko obejście błędu w Ubuntu (rfkill); Bluetooth jest teraz wyłączany dopiero przy logowaniu użytkownika.
  • Bug #5: moduł jądra tp_smapi nie jest automatycznie ładowany przez tlp i tlp-stat.
  • Bug #6: ostrzeżenie „tlp: [: 79: -a: unexpected operator” (Wi-Fi Intel 2200bg).

Nowe funkcje:

  • Zmiana uruchamiania systemu ze skryptu init na Upstart
  • Rozszerzone wyjście i kontrole błędów w tlp-stat
  • Wyłączaj napęd optyczny UltraBay przy przełączeniu na zasilanie bateryjne (parametr BAY_POWEROFF_ON_BAT=1)
  • wifi on|off dla WLAN Intel 2200bg/2915abg (możliwe tylko z sudo)

Wersja 0.2.1 - 02.02.2010

Poprawki błędów:

  • Bug #1: polecenia pm-suspend i pm-hibernate zawieszają się.
  • Bug #2: ostrzeżenie „/usr/sbin/tlp: 79: cannot create /sys/class/scsi_host/host*/link_power_management_policy: Directory nonexistent”.

Wersja 0.2.0 - 30.01.2010

Wydanie początkowe.

Narzędzia osobiste
Think-Wiki