![]() |
|
|
|||||||
| Registrieren | Hilfe | Benutzerliste | Interessengemeinschaften | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
|
|
Prozessoren (Stromsparen)Aus Linux-Forum WikiDieser Artikel befindet sich noch im Aufbau und ist somit unvollständig oder nicht detailiert genug.
Artikel von --Jean-Michel 03. Sep. 2009 (CEST) Auf den meisten aktuellen Prozessoren, aber auch auf älteren finden sich Möglichkeiten zum Stromsparen. Da die CPU mit am meisten Leistung verbraucht und somit Top-Stromverbraucher in einem Computer ist, gehe ich nachfolgend auf die Möglichkeiten zum Stromsparen unter Linux ein. CPU Frequency Scalingondemand governor Die wohl wichtigste Einstellung zum Strom sparen ist der ondemand governor. Dieser Entscheidet, sofern die CPU es unterstützt, mit welcher Taktrate die CPU angesprochen wird und senkt je nach vorhandener Load so den Stromverbrauch der CPU - Sobald die Load steigt, wird wieder hochgetaktet. Das ganze sieht dann auf einem Server (Pentium 4 HT 3 GHz) beispielsweise so aus: $ cpufreq-info hardware limits: 375 MHz - 3.00 GHz available frequency steps: 375 MHz, 750 MHz, 1.13 GHz, 1.50 GHz, 1.88 GHz, 2.25 GHz, 2.63 GHz, 3.00 GHz current CPU frequency is 375 MHz (asserted by call to hardware). Auf einem Notebook (Acer Aspire 5520G, AMD x2 Turion 2GHz): Hardwarebedingte Grenzen der Taktfrequenz: 800 MHz - 2.00 GHz mögliche Taktfrequenzen: 2.00 GHz, 1.80 GHz, 1.60 GHz, 800 MHz momentane Taktfrequenz ist 1.60 GHz. Auf einem Netbook (Acer Aspire One, Intel Atom CPU): Hardwarebedingte Grenzen der Taktfrequenz: 800 MHz - 1.60 GHz mögliche Taktfrequenzen: 1.60 GHz, 1.33 GHz, 1.07 GHz, 800 MHz momentane Taktfrequenz ist 1.60 GHz (verifiziert durch Nachfrage bei der Hardware). Und schlussendlich auf einem Desktop PC (AMD 64 x2 2x2GHz) hardware limits: 1000 MHz - 2.00 GHz available frequency steps: 2.00 GHz, 1.80 GHz, 1000 MHz current CPU frequency is 1000 MHz. Damit man obige Ausgaben bekommt, muss man sich entsprechendes Paket installieren, in meiner Distribution heisst es: "cpufrequtils". Sucht einfach mal nach "cpufreq". Der Befehl wäre dann wie oben schon geschrieben cpufreq-info Mit folgendem Befehl kann man auslesen ob verschiedene und welche Governor unterstützt werden: cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors Selbiges funktioniert auch mit cpufreq-info -g Welcher governor zur Zeit eingestellt ist, kann hiermit herausgefunden werden: cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor Und mit dem folgendem Befehl, kann man den Governor setzen, beispielsweise wenn man das Paket cpufreq nicht findet: echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor Einfacher ginge es mit cpufreq-utils: cpufreq-set -g ondemand Sollte sich das ganze bei euch noch nicht im Kernel befinden (Existiert /sys/devices/system/cpu/cpu0/cpufreq?) müsst ihr es einkompilieren. Die wichtigsten Einstellungen sind: CONFIG_CPU_FREQ=y CONFIG_CPU_FREQ_GOV_ONDEMAND=m CONFIG_X86_ACPI_CPUFREQ=m Es gibt noch einige weitere Einstellungen die je nach Hardware interessant sein könnten, diese 3 sind aber die wichtigsten. Anmerkung: Bei manchen Systemen nimmt cpufreq-set an, das cpu0 gesetzt werden soll; das heisst es sollte mit -c bzw. --cpu die CPU angegeben werden bei welcher die Optimierung gesetzt werden soll. CPU Scheduling (Multi core, Multi threading)Die folgenden Einstellungen können dazu beitragen in bestimmten Fällen Strom zu sparen, wirken sich allerdings möglicherweise negativ auf die Performance aus. Dabei gilt zu beachten das diese Einstellungen je nach Prozessor eventuell nicht vorhanden sind. Im Grunde sorgen die Einstellungen für eine bessere Verteilung der Last. Multi Cores echo 1 > /sys/devices/system/cpu/sched_mc_power_savings Multi Threading echo 1 > /sys/devices/system/cpu/sched_smt_power_savings IrqbalanceIrqbalance ist eine Art loadbalancer für die Cores in einem System, somit nur relevant bei mehreren Cores beziehungsweise Prozessoren. Es wird empfohlen nicht das Kernel-Eigene Irqbalance zu nutzen, sondern sich irqbalance von www.irqbalance.org zu installieren (Bei den meisten Distributionen als Paket "irqbalance" schon vorhanden). Irqbalance hilft dabei mehr Strom bei dem Prozessor zu sparen. |