Blog (7)
Komentarze (322)
Recenzje (0)
@FadeMindManjaro - optymalne ustawienia zasilania

Manjaro - optymalne ustawienia zasilania

01.10.2013 22:07, aktualizacja: 21.10.2013 11:47

Zapanować nad zużyciem energii w Manjaro

Domyślne ustawienia zasilania z pakietu laptop-tools wykorzystywane w Manjaro pozostawiają wiele do życzenia i w znikomy sposób oszczędzają energię. Odpowiednie wpisy w GRUB aktywują pełne ACPI, zaawansowane zarządzanie energią dla układów Intela oraz oszczędzanie energii szyn PCI. Dodatkowo po instalacji kernela z linii 3.11 można aktywować przez odpowiedni wpis w GRUB dynamiczne zarządzanie energią dla kart graficznych AMD Radeon - DPM. Deamon Thermald jest przeznaczony dla procesorów Intel. Usługa dynamicznie zarządza chłodzeniem procesora - ciszej i chłodniej. TLP to prosty w konfiguracji deamon zarządzający zużyciem energii w laptopach - mniej zaawansowany odpowiednik skryptu APM (skrypt zarządzania energią dla Ubuntu opisany tutaj ).

Ważne

  • Upewnij się, że masz zainstalowany kernel z linii 3.11
  • Upewnij się, że masz zainstalowany Microcode dla swojego procesora
  • Upewnij się, że masz dodane odpowiednie wpisy w pliku konfiguracyjnym GRUB
  • Upewnij się, że masz zainstalowane wszystkie aktualizacje
484923

Instalacja kernela 3.11.x

W terminalu wykonaj polecenie:

sudo mhwd-kernel -i linux311

Instalacja Microcode dla procesora Intel

W terminalu wykonaj polecenie:

sudo pacman -S intel-ucode

Dodaj moduł microcode do listy modułów jądra ładowanych w czasie uruchamiania systemu:

su -c 'echo "microcode" >> /etc/modules-load.d/microcode.conf'

Dodawanie flag GRUB

W terminalu wykonaj polecenie:

sudo gedit /etc/default/grub

W linii:

GRUB_CMDLINE_LINUX=""

pomiędzy znakami cudzysłowu wpisz odpowiednie flagi:

Flagi GRUB - dla nowszych modeli laptopów

INTEL - standardowe

pcie_aspm=force acpi_osi='!Windows 2012' acpi=force acpi_enforce_resources=lax i915.i915_enable_rc6=1 i915.i915_enable_fbc=1 i915.lvds_downclock=1 i915.semaphores=1

INTEL - jeżeli nie działa kontrola podświetlania matrycy

pcie_aspm=force acpi_osi='!Windows 2012' acpi=force acpi_enforce_resources=lax i915.i915_enable_rc6=1 i915.i915_enable_fbc=1 i915.lvds_downclock=1 i915.semaphores=1 drm.vblankoffdelay=1 acpi_backlight=vendor

AMD/NVIDIA - standardowe ustawienia

pcie_aspm=force acpi_osi='!Windows 2012' acpi_enforce_resources=lax

AMD/NVIDIA - jeżeli nie działa kontrola podświetlania matrycy

pcie_aspm=force acpi_osi='!Windows 2012' acpi_enforce_resources=lax acpi_backlight=vendor

AMD - włączenie zaawansowanego zarządzania energią kart graficznych AMD Radeon (kernel 3.11 lub nowszy)

radeon.dpm=1

Wyłączenie usypiania portów USB

usbcore.autosuspend=-1

Flagi GRUB - dla starszych modeli laptopów

INTEL - standardowe

pcie_aspm=force acpi_osi=Linux acpi=force acpi_enforce_resources=lax i915.i915_enable_rc6=1 i915.i915_enable_fbc=1 i915.lvds_downclock=1 i915.semaphores=1

INTEL - jeżeli nie działa kontrola podświetlania matrycy

pcie_aspm=force acpi_osi=Linux acpi=force acpi_enforce_resources=lax i915.i915_enable_rc6=1 i915.i915_enable_fbc=1 i915.lvds_downclock=1 i915.semaphores=1 drm.vblankoffdelay=1 acpi_backlight=vendor

AMD/NVIDIA - standardowe ustawienia

pcie_aspm=force acpi_osi=Linux acpi=force acpi_enforce_resources=lax

AMD/NVIDIA - jeżeli nie działa kontrola podświetlania matrycy

pcie_aspm=force acpi_osi=Linux acpi=force acpi_enforce_resources=lax acpi_backlight=vendor

AMD - włączenie zaawansowanego zarządzania energią kart graficznych AMD Radeon (kernel 3.11 lub nowszy)

radeon.dpm=1

Wyłączenie usypiania portów USB

usbcore.autosuspend=-1

Zapisujemy zmiany w pliku. Wykonujemy w terminalu polecenie:

sudo update-grub

Instalacja TLP

W terminalu wykonaj polecenie:

sudo pacman -S smartmontools iw
yaourt -S  tlp

Konfiguracja usługi TLP

Stwórz kopię zapasową domyślnej konfiguracji TLP:

sudo cp /etc/default/tlp /etc/default/tlp.bak

Edytuj plik konfiguracyjny TLP:

sudo gedit /etc/default/tlp

Zmień kolejno zmienne na:

TLP_ENABLE=1

Tylko dla CPU Intel z P‑state

CPU_SCALING_GOVERNOR_ON_AC=performance
CPU_SCALING_GOVERNOR_ON_BAT=powersave

Tylko dla CPU Intel z Turbo Boost (procesory z serii i5/i7)

CPU_BOOST_ON_AC=1
CPU_BOOST_ON_BAT=0

Zapisz zmiany w pliku. Uruchom deamona TLP:

su -c "systemctl enable tlp-sleep.service && systemctl enable tlp && systemctl start tlp"

Instalacja Linux Thermal Daemon (tylko dla CPU Intel)

W terminalu wykonaj polecenie:

yaourt -S thermald

Konfiguracja usługi thermald

Uruchom deamona thermald:

su -c "systemctl enable thermald.service && systemctl start thermald.service"

Dynamiczna zmiana planisty I/O dysków

Domyślnym planistą dysku jest CFQ. Wyższą wydajność odczytu/zapisu dla dysków SSD ma planista noop. Można zautomatyzować proces zmiany planisty I/O dysku w zależności, czy dysk jest obrotowy (HDD) czy nie (SSD). Stwórz nowy plik:

sudo gedit /etc/udev/rules.d/60-schedulers.rules

Wklej do niego kod:

# set deadline scheduler for non-rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="noop"
# set cfq scheduler for rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="cfq"

Zapisz zmiany w pliku. Uruchom ponownie komputer.

Podsumowanie

Poprzez zastosowanie odpowiednich dla mojego laptopa wpisów GRUB, zainstalowanie TLP oraz Thermald, zyskałem niski pobór energii w czasie na baterii (w okolicach 9 W), niską temperaturę procesora (45‑48 stopni C. w stanie spoczynku, 56 stopni C. w stanie obciążenia) i wyższą wydajność w pracy na zasilaniu sieciowym.

Zachęcam do zapoznania się z dokumentacją TLP. Można dostosować usługę do własnych potrzeb.

Ważne linki

Wybrane dla Ciebie
Komentarze (13)