G

Thinkpad-Optimierung

Begonnen von guest37, 25. Dezember 2017, 14:52:25

« vorheriges - nächstes »

0 Mitglieder und 1 Gast betrachten dieses Thema.

guest37

Hier habe ich mal verschiedene Thinkpad-Optimierungs-Optionen für User von Artix-Linux zusammengetragen.
Viel Spass damit !!!

WIE IMMER: $ = ohne ROOT; # = mit ROOT



Installation von Prozessor-Firmware (Intel-Microcode) und proprietärer Schnittstelle
   (Smapi-BIOS = System Management Application Program Interface Basic Input/Output System):
 
# pacman -Syu intel-ucode tp_smapi-lts


Hardware-Steuerung und Energiemanagement (Kernelmodul ACPI = Advanced Configuration and Power Interface):
 
# pacman -S acpid
  ("acpid" ist im ArtixLinux-Basissystem bereits installiert und aktiviert)

→ openrc-Dienst und -Startbefehl für acpid:
   
# sudo rc-update add acpid default && sudo rc-service acpid start


Festplattenschutz (hdaps =  Hard Drive Active Protection System):
 
# pacman -S hdapsd && echo "options hdaps invert=1" | sudo tee /etc/modprobe.d/modprobe.conf


Hardwaremonitor-Sensorerkennung (LM-Sensors = Linux Monitoring Sensors):
 
# pacman -S lm_sensors && sudo sensors-detect
  (Kernelmodule optional mit "YES" aktivieren)

→ Hardware-Sensoren-Check über:
$ sensors


Powertop (Energiemanagement-Diagnosetool):
 
# pacman -S powertop

→ Energie-Optionsangaben über
 
# powertop --help


Thermald (Performanceschonende Temperatur-/Lüfterkontrolle für Thinkpads ab Sandy Bridge CPU's):
 
# pacman -S thermald thermald-openrc


→ openrc-Dienst und -Startbefehl für thermald:
 
# sudo rc-update add thermald default && sudo rc-service thermald start


guest37

Thinkfan (Linux-Lüfter- und Temperatursteuerung):
$ yaourt -S thinkfan


  → ThinkPad-acpi-Kernelmodule für thinkfan konfigurieren:
# echo "options thinkpad_acpi fan_control=1" | sudo tee /etc/modprobe.d/thinkfan_acpi.conf


  → Neustart - oder
# modprobe -v thinkpad_acpi


  → Ausführbares thinkfan-Init-Script erstellen:
# nano /etc/init.d/thinkfan

   
  → mit folgendem Inhalt:
#!/sbin/openrc-run
#
# Argumente "-q -b1 -s3" minimieren ein Hin- und Herspringen zwischen den Lüfterstufen. 
# Bedeutung: 	-q (= quiet), 
# 		-b (=Bias: Reaktionsgeschwindigkeit des Temperaturanstiegs, Default: 5), 
# 		-s (=Sekunden zwischen den Temperaturmessungen, Default: 5)
#

extra_started_commands="reload"

depend() {
	after modules
}

start() {
	ebegin "Starting thinkfan"
	start-stop-daemon --start --exec /usr/sbin/thinkfan -- -q -b1 -s3 /etc/thinkfan.conf
	eend $?
}

stop() {
	ebegin "Stopping thinkfan"
	start-stop-daemon --stop --exec /usr/sbin/thinkfan
	eend $?
}

reload() {
	PID=$(</var/run/thinkfan.pid)
	ebegin "Sending SIGHUP to thinkfan($PID)"
	kill -HUP $PID
	eend $?
}

  → Abspeichern mit Strg+O, Return, Beenden mit Strg+X und ausführbar machen:
# chmod +x /etc/init.d/thinkfan


  → Regelung der Temperaturschwellen und der Lüfterdrehzahlen:
# nano /etc/thinkfan.conf

   
  → mit folgendem Inhalt:
##########################################################################
#
# THINKFAN - Konfigurationsdatei für IBM/Lenovo Thinkpads (thinkpad_acpi, /proc/acpi/ibm)
# ============================================================================================
#
# ThinkFan interagiert mit Linux Hardware Monitor Treibern (hwmon), v.a. mit dem Kernelmodul 
# ThinkPad-ACPI (Advanced Configuration and Power Interface) für Laptopfunktionen, schont 
# Prozessor-Ressourcen (CPU) und reguliert die Lüftungssteuerung für Archlinux/Manjaro.
# Vorteile: 
# Niedrigere Durchschnittstemperatur, leises Anlaufen auf niedriger Stufe, Kontrolle
# (Voraussetzung: Gereinigter Lüfter und Luftaustrittsöffnungen des Kühlkörpers)
# Nachteile: 
# ggf. höherer Stromverbrauch (häufige CPU Wakeups), Überhitzungsgefahr bei Programmcrash
#
# ACHTUNG: Manipulationen am Lüfter können zu Überhitzung und damit zu irreversiblen 
# Hardware-Schäden führen. Die Lüfter-Einstellungen dürfen nur bei gleichzeitiger 
# Überwachung der Temperatur-Sensoren verändert werden!
#
##############################################################################################
#
# TEMPERATUREN-OFFSETS:
# Möchte man einzelne Sensoren stärker gewichten, so versieht man sie mit einem Offset. 
# Dazu nimmt man eine sensors-Zeile vor den Schwelleneinstellungen auf.
# Im Beispiel werden zum Wert des 2., 9. und 10. Sensors jeweils 5°C addiert und 
# anschließend (nach erfolgreichem Testlauf) zur Aktivierung auskommentiert:
# sensor /proc/acpi/ibm/thermal (0, 5, 0, 0, 0, 0, 0, 0, 5, 5)
# WARNUNG: Offsets sollten optional nur mit der gebotenen Vorsicht eingesetzt und  
# die Einstellungen unbedingt per Testbetrieb (s.u.) überprüfen werden.
# Weitere Informationen unter http://www.thinkwiki.org/wiki/Thermal_Sensors
#
# TEMPERATURSENSOREN:
# Aktive Temperatorsensoren mit [$ find /sys/devices -type f -name "temp*_input"]
# ermitteln, hier nach hwmon-Befehl einfügen (copy & paste) und auskommentieren!!!
# → hwmon: Input-Aktivierung der Hardware-Monitor-Temperatur-Sensoren.
# Bei meinem T410 sieht das z.B. so aus:
#
hwmon /sys/devices/virtual/hwmon/hwmon0/temp1_input
hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon2/temp2_input
hwmon /sys/devices/platform/coretemp.0/hwmon/hwmon2/temp4_input
#
# TEMPERATURSCHWELLEN (Syntax: LEVEL, LOW, HIGH):
# Die vorgegebenen Temperaturschwellen sollten mit jedem ThinkPad funktionieren.
# Jede Zeile besteht aus drei Wert-Spalten - deren Bedeutung ist (von links nach rechts):
# → Spalte 1: Lüfter-LEVEL = 0 (aus) - 7 (max.), 127 ("disengaged", d.h. ungeregelte volle Lüfterdrehzahl)
# → Spalte 2: LOW = Temperatur bei deren Erreichen in absteigender Richtung der Lüfterlevel um 1 veringert wird
# → Spalte 3: HIGH = Temperatur bei deren Erreichen in aufsteigender Richtung der Lüfterlevel um 1 erhöht wird
# Hinweis: Berücksichtigt wird jeweils nur der höchste Wert aller konfigurierten Temperatursensoren. 
#
(0,      0,     42)
(1,     40,     47)
(2,     45,     52)
(3,     50,     57)
(4,     55,     62)
(5,     60,     67)
(6,     65,     72)
(7,     70,     77)
(127,   75,     32767)
#
##########################################################################


  → openrc-Dienst und -Startbefehl für thinkfan:
 
# rc-update add thinkfan default && rc-service thinkfan start


  → Neustarten!

guest37

THINKPAD-KONTROLLBEFEHLE:

  → Hardware-Sensoren:
$ sensors


  → Thinkfan-Funktion:
    Risikoloser Testbetrieb nach Deamon-Stop und Testausgabe-Anforderung:
# rc-service thinkfan stop && thinkfan -n
               
    Testende: Strg+C. Nach gefahrlosem Testergebnis bzw. Ausgangs-Widerherstellung erneut Deamon-Start:
# rc-service thinkfan start


  → Lüfter-Temperatursensoren:   (→ alle verfügbaren Temperatursensoren)
$ find /sys/devices -type f -name "temp*_input"


  → Lüfter-Temperatursensoren-Temperaturen:   (→ Sensorenzuordnung ist modellabhängig. Der erste Wert betrifft stets die CPU)
$ cat /proc/acpi/ibm/thermal


  → Obere Akku-Ladeschwelle:
$ cat /sys/devices/platform/smapi/BAT0/stop_charge_thresh


  → Untere Akku-Ladeschwelle:
$ cat /sys/devices/platform/smapi/BAT0/start_charge_thresh