Oszczędzanie energii w Arch

Witajcie bardzo serdecznie.
Mam dość dziwny problem. Pobór energii z baterii Na Windowsie nie przekracza 8w. Potrafi spaść do 4w, a nawet 3,8w przy zachowaniu średnio nadającej się do użytkowania wydajności. WYłączony ekran, bo i tak jestem niewidomy więc go nie używam, proceks kręcony do 70% wydajności, usypianie usb i wszystko, co się da wrzucone w tryb oszczędzania energii.
Na Linuxie się tak nie da. W tlp procek skręciłem do 80%, czyli parametr CPU_MAX_PERF_ON_BAT=80

Taktowanie od 500 do 1500 mhz
Dysk wyłącza się po 10 minutach bezczyności.
Bluetooth, wifi i wszystko, co się dało w trybie oszczędzania energii.
Procesor i pcie też.
Nie dość, ze system się tka, to jeszcze żre między 8 a 15w.
Co tu jeszcze zmniejszyć, albo zwiększyć, żeby dało się mniej więcej odpalić pakiet biurowy bez zwiech screen readera i żeby mi nie rosło załóżmy powyżej 11w?

Może wyłącz kartę graficzną w BIOSie, jeśli laptop posiada zintegrowaną?

Wyłączenie karty graficznej to nie jest rozwiązanie.
Hm. Ale te porady z Manjaro mogę sobie w Archu wrzucić i normalnie powinno przejść wszystko?

Oprócz kerneli (manjaro ma swój schemat nazw). TLP możesz dostosować wedle upodobań, ale bez zaawansowanych flag pod kernel nie aktywujesz większości trybów powersave.
Przydałby się log dmesg oraz tlp-stat.

sudo tlp-stat > TLPSTAT.log

dmesg > DMESG.log

Pliki znajdziesz w Twoim katalogu domowym. Wrzuć je na wklej.org. Dziękuję.

ponoć kernel w wersji 4.15 przynosi duże usprawnienia w oszczędzaniu energii. Tutaj link

1 polubienie

Parę dni temu pisał tez o tym Adam Golański na DP

Pytam dla pewności. Z jakiego (i czy w ogóle) środowiska graficznego korzystasz? Nie przypadkiem z Plasmy5? GNU/Linuksy od pewnego czasu pobierają więcej energii od Windows, a Plasma5 jest najbardziej prądożernym środowiskiem.

To mój laptop będzie teraz trzymał 12h na baterii, zamiast 8h :slight_smile: Właśnie zapodałem sobie 4.15 na Gentoo :wink:

Dziwi mnie tylko, że autor ma wyższe użycie energii na Archu. Ja zaś mam na odwrót, Windows wysysa baterię w 4h, gdy Gentoo spokojnie pracuje sobie 6 - 8h.

Dobra, kilka wyjaśnień.
Plasma nie jest dostępna dla osób niewidomych.
Korzystam więc z Gnome, najbardziej dostępnego (przynajmniej na razie i miejmy nadzieję, ze cos się kiedyś zmieni) środowiska graficznego dla osób z dysfunkcją wzroku w swiecie Linuxów, przynajmniej jest najbardziej dostępne z tych kilku, które widziałem podczas mojej dwuletniej przygody z Linuxem.
Arch jeszcze nie ma 4.15, a mi się znów nie chce bawić w kompilację Kernela, bo nie pamiętam gdzie się wrzucało flagę LSMOD=ścieżka_do_używanych_modułów. Jakieś fajne narzędzie do generowania używanych modułów mam na dysku Zainstalowane, Pawbaranow mi coś kiedyś pomagał w tych sprawach… No i możliwe, ze ktoś jeszcze.

Dobra, teraz logi.
dmesg:
http://wklej.org/id/3362468/
tlp-stat:
http://wklej.org/id/3362469/

A, no i po zastosowaniu porady z forum Manjaro i wrzuceniu tych raczej odpowiednich flag do GRUB_CMDLINE_LINUX… Nie sprawdzałem znaczek po znaczku, ajk to się piszę, no ale w każdym razie gdzieś tam…
Zużycie skaczę mi między 7 a 17w.

[  702.884752] ERROR @wl_cfg80211_scan : 
[  702.884757] WLC_SCAN error (-22)
[  765.874556] ERROR @wl_cfg80211_scan : 
[  765.874559] WLC_SCAN error (-22)
[  828.876431] ERROR @wl_cfg80211_scan : 
[  828.876435] WLC_SCAN error (-22)
[  891.898934] IPv6: ADDRCONF(NETDEV_UP): wlp6s0: link is not ready
[  891.982026] ERROR @wl_cfg80211_scan : 
[  891.982029] WLC_SCAN error (-22)
[  891.987943] ERROR @wl_cfg80211_scan : 
[  891.987946] WLC_SCAN error (-22)
[  954.847462] ERROR @wl_cfg80211_scan : 
[  954.847464] WLC_SCAN error (-22)
[ 1017.848773] ERROR @wl_cfg80211_scan : 
[ 1017.848775] WLC_SCAN error (-22)
[ 1080.865760] ERROR @wl_cfg80211_scan : 
[ 1080.865763] WLC_SCAN error (-22)
[ 1143.902833] ERROR @wl_cfg80211_scan : 
[ 1143.902836] WLC_SCAN error (-22)
[ 1206.902386] IPv6: ADDRCONF(NETDEV_UP): wlp6s0: link is not ready
[ 1206.944868] ERROR @wl_cfg80211_scan : 
[ 1206.944870] WLC_SCAN error (-22)
[ 1206.950767] ERROR @wl_cfg80211_scan : 
[ 1206.950770] WLC_SCAN error (-22)
[ 1269.877666] ERROR @wl_cfg80211_scan : 
[ 1269.877671] WLC_SCAN error (-22)
[ 1332.896600] ERROR @wl_cfg80211_scan : 
[ 1332.896605] WLC_SCAN error (-22)
[ 1395.896545] ERROR @wl_cfg80211_scan : 
[ 1395.896547] WLC_SCAN error (-22)
[ 1458.843773] ERROR @wl_cfg80211_scan : 
[ 1458.843776] WLC_SCAN error (-22)
[ 1521.851869] IPv6: ADDRCONF(NETDEV_UP): wlp6s0: link is not ready
[ 1521.901179] ERROR @wl_cfg80211_scan : 
[ 1521.901185] WLC_SCAN error (-22)
[ 1521.908439] ERROR @wl_cfg80211_scan : 
[ 1521.908445] WLC_SCAN error (-22)
[ 1584.881075] ERROR @wl_cfg80211_scan : 
[ 1584.881079] WLC_SCAN error (-22)
[ 1647.862234] ERROR @wl_cfg80211_scan : 
[ 1647.862238] WLC_SCAN error (-22)
[ 1710.876589] ERROR @wl_cfg80211_scan : 
[ 1710.876592] WLC_SCAN error (-22)
[ 1773.816571] ERROR @wl_cfg80211_scan : 
[ 1773.816574] WLC_SCAN error (-22)
[ 1836.823829] IPv6: ADDRCONF(NETDEV_UP): wlp6s0: link is not ready
[ 1836.857841] ERROR @wl_cfg80211_scan : 
[ 1836.857844] WLC_SCAN error (-22)
[ 1836.863806] ERROR @wl_cfg80211_scan : 
[ 1836.863809] WLC_SCAN error (-22)
[ 1899.882698] ERROR @wl_cfg80211_scan : 
[ 1899.882700] WLC_SCAN error (-22)
[ 1962.835525] ERROR @wl_cfg80211_scan : 
[ 1962.835529] WLC_SCAN error (-22)
[ 2025.860036] ERROR @wl_cfg80211_scan : 
[ 2025.860039] WLC_SCAN error (-22)
[ 2058.097858] Failed to release pages: bind_count=1, pages_pin_count=1, pin_display=0
[ 2058.097895] ------------[ cut here ]------------
[ 2058.097925] WARNING: CPU: 1 PID: 6074 at drivers/gpu/drm/i915/i915_gem_userptr.c:89 cancel_userptr+0xdc/0xe0 [i915]
[ 2058.097926] Modules linked in: uinput rtsx_usb_ms memstick rtsx_usb_sdmmc rtsx_usb cmac rfcomm nvidia(PO) bnep nls_iso8859_1 nls_cp437 vfat fat btusb btrtl btbcm btintel bluetooth fuse ecdh_generic joydev mousedev uvcvideo rndis_host uas cdc_ether usbnet hid_rmi rmi_core videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 iTCO_wdt iTCO_vendor_support msr wmi_bmof videobuf2_core videodev dell_wmi intel_rapl sparse_keymap mxm_wmi x86_pkg_temp_thermal media intel_powerclamp coretemp kvm_intel kvm irqbypass crct10dif_pclmul crc32_pclmul ghash_clmulni_intel snd_hda_codec_realtek snd_hda_codec_hdmi snd_hda_codec_generic pcbc aesni_intel aes_x86_64 crypto_simd dell_laptop dell_smbios glue_helper wl(PO) dcdbas mei_me cryptd dell_smm_hwmon intel_cstate snd_hda_intel mei cfg80211 intel_rapl_perf snd_hda_codec
[ 2058.097966]  r8169 i2c_i801 psmouse pcspkr input_leds mii snd_soc_ssm4567 snd_soc_rt5640 snd_soc_rl6231 lpc_ich snd_soc_core snd_hda_core shpchp snd_hwdep snd_soc_sst_acpi snd_soc_sst_match snd_compress snd_pcm_dmaengine snd_pcm battery wmi thermal fan snd_timer snd 8250_dw i2c_hid soundcore elan_i2c ac97_bus hid evdev dell_rbtn mac_hid spi_pxa2xx_platform rfkill acpi_pad ac sch_fq_codel speakup_soft(C) speakup(C) sg crypto_user ip_tables x_tables ext4 crc16 mbcache jbd2 fscrypto usb_storage sr_mod cdrom sd_mod serio_raw atkbd libps2 ahci libahci ehci_pci xhci_pci libata crc32c_intel xhci_hcd ehci_hcd scsi_mod usbcore usb_common i8042 serio sdhci_acpi sdhci led_class mmc_core i915 video button intel_gtt i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops drm agpgart
[ 2058.098010] CPU: 1 PID: 6074 Comm: kworker/u8:3 Tainted: P         C O    4.14.15-1-ARCH #1
[ 2058.098011] Hardware name: Dell Inc. Inspiron 3543/064DYJ, BIOS A01 11/04/2014
[ 2058.098035] Workqueue: i915-userptr-release cancel_userptr [i915]
[ 2058.098037] task: ffff8a46e4b2d880 task.stack: ffffb5c000d20000
[ 2058.098056] RIP: 0010:cancel_userptr+0xdc/0xe0 [i915]
[ 2058.098057] RSP: 0018:ffffb5c000d23e80 EFLAGS: 00010282
[ 2058.098059] RAX: 0000000000000047 RBX: ffff8a46b2f8c840 RCX: 0000000000000000
[ 2058.098060] RDX: 0000000000000000 RSI: ffff8a472ec96598 RDI: ffff8a472ec96598
[ 2058.098060] RBP: ffff8a46b2f8c9f0 R08: 0000000000000001 R09: 00000000000003e0
[ 2058.098061] R10: fffff74b468451c0 R11: 0000000000000000 R12: 0000000000000000
[ 2058.098062] R13: 0000000000000000 R14: 0ffff8a46e26858a R15: ffff8a46f04b3f00
[ 2058.098063] FS:  0000000000000000(0000) GS:ffff8a472ec80000(0000) knlGS:0000000000000000
[ 2058.098064] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 2058.098065] CR2: 000055ddfb8eed00 CR3: 00000001ea00a001 CR4: 00000000003606e0
[ 2058.098066] Call Trace:
[ 2058.098073]  process_one_work+0x1e0/0x420
[ 2058.098076]  worker_thread+0x2b/0x3d0
[ 2058.098078]  ? process_one_work+0x420/0x420
[ 2058.098080]  kthread+0x11a/0x130
[ 2058.098082]  ? kthread_create_on_node+0x70/0x70
[ 2058.098084]  ? kthread_create_on_node+0x70/0x70
[ 2058.098086]  ret_from_fork+0x35/0x40
[ 2058.098088] Code: fe 14 00 00 75 d7 8b 93 d0 01 00 00 8b 8b ac 01 00 00 48 c7 c7 a0 d6 2b c0 8b b3 a4 01 00 00 c6 05 0e fe 14 00 01 e8 af 91 ee fa <0f> ff eb ae 0f 1f 44 00 00 41 57 41 56 ba 08 00 00 00 41 55 41 
[ 2058.098118] ---[ end trace 7446b242550cca86 ]---

Intel jak zwykle dał du*y.

Rada: nie używaj usypiania, albo chociaż włącz tlp-sleep.service.

COś jeszcze gdzieś można zrobić?
Maksymalny pobór mocy to 31,3w zarejestrowany właśnie po wybudzeniu z uśpienia :slight_smile:

Coś gdzieś jeszcze można zrobić?
No i właśnie maksymalny pobór mocy zarejestrowany przeze mnie właśnie zaraz po wybudzeniu komputera to 31,3w

TLP to projekt bazujący na muzealnych założeniach. Sens jego używania był czasach Pentium. Przy twoim i7-5500U sensu w używaniu TLP ja nie widzę żadnego.

Normalnie skonfigurowany system, beż żadnych takich prowizorek i protez dopisywanych w Grubie nie powinien pobierać więcej niż 8-9W przy w miarę normalnym użytkowaniu.
Screenshot
Oczywiście przy bardziej agresywnych ustawieniach można spokojnie zjechać do tych 4W.

Jakim cudem? Jak nie miałem ltp to w sumie nawet nie wiem jak było. Wiem jednak, że troche pomagało. I niby gdzie te agresywne ustawienia w takim razie zastosować?

Zainstaluj powertop i sprawdź co ci żre na baterii. Widzę że masz Gnome, to sprawdź jakie ustawienia ma tracker “działanie podczas zasilania z akumulatora”, albo całkiem wyłącz indeksowanie jak nie potrzebujesz.

tracker-preferences

A nie masz ty tam dwóch kart graficznych, co tam masz i jakie sterowniki używane są.

lspci -k | grep -A 2 -E "(VGA|3D)"