Portál AbcLinuxu, 1. května 2025 15:31
V dnešní době se do popředí zájmu a pozornosti uživatelů dostávají dvoujádrové procesory. Na výběr je Intel Core Duo, Intel Core 2 Duo nebo AMD Athlon64 X2, AMD Turion64 X2. My se podíváme jak je možné nastavit power management u těchto procesorů.
Power managmentem nebo-li správou napájení se rozumí změna frekvence a s tím spojena automatická změna voltáže především u mobilních procesorů. V posledních letech se však setkáváme také u desktopových procesorů s těmito funkcemi, a to pod názvy AMD PowerNow! a Intel Enhanced Speedstep. Procesory se stávají stále více energeticky náročnějšími a není vždy potřeba, aby procesor jel 100% výkonem. Zejména pak u notebooků je třeba brát ohled na výdrž baterie, hluk a teplotu. Nyní ukážeme jak změnit frekvenci pomocí ACPI u dvoujádrových procesorů.
Základem je jádro se zabudovanou podporou SMP,ACPI a CPU Frequency scaling - funguje bezproblémů jádro 2.6.20 (i starší). Dále pak ACPI klienta a cpufreqd, který nám umožnuje změnu frekvence hned při bootování. Cpufreqd závisí na cpufrequtils, který dodává informace o minimální a maximální frekvenci procesoru. Ještě zbývá laptop-mode-tools, který umožnuje nezávislou změnu frekvence u obou jader procesoru. Bez něj nedokázal cpufreqd změnit frekvenci u druhého jádra procesoru. Pokud máte procesor od AMD je možné použít místo cpufreqd program powernowd.
Než začneme s nastavením programů musíme vědět, zda máme zkompilovány všechny potřebné moduly a podporu ACPI. Základní moduly jsou 'acpi_cpufreq', 'cpufreq_stats', 'cpufreq_powersave', 'cpufreq_conservative', 'cpufreq_ondemand', 'cpufreq_userspace'a můžeme načíst také 'ac', 'battery', 'button', 'fan', 'video'. U jader z distribuce tomu určitě tak bude, moduly můžeme uložit do '/etc/modules.conf', aby se načítali při každém spuštěním.
Pozor, změnu frekvence již nemá na starosti modul 'centrino_speedstep', který je označen jako zastaralý, ale nahradil jej novější 'acpi_cpufreq' - ACPI Processor P-States driver. Při načtení modulu 'centrino_speedstep' již nelze modul 'acpi_cpufreq' nahrát a změna frekvence nemusí fungovat správně.
[alois@amilo ~]$ cpufreq-info cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006 Report errors and bugs to linux@brodo.de, please. analyzing CPU 0: driver: acpi-cpufreq CPUs which need to switch frequency at the same time: 0 hardware limits: 1000 MHz - 1.67 GHz available frequency steps: 1.67 GHz, 1.33 GHz, 1000 MHz available cpufreq governors: userspace, ondemand, conservative, powersave, performance current policy: frequency should be within 1000 MHz and 1.67 GHz. The governor "ondemand" may decide which speed to use within this range. current CPU frequency is 1000 MHz. analyzing CPU 1: driver: acpi-cpufreq CPUs which need to switch frequency at the same time: 1 hardware limits: 1000 MHz - 1.67 GHz available frequency steps: 1.67 GHz, 1.33 GHz, 1000 MHz available cpufreq governors: userspace, ondemand, conservative, powersave, performance current policy: frequency should be within 1000 MHz and 1.67 GHz. The governor "ondemand" may decide which speed to use within this range. current CPU frequency is 1000 MHz.
Když známe maximální a minimální frekvenci, nastavíme '/etc/conf.d/cpufreq' a zároveň můžeme vybrat svůj governor, který nám nejlépe vyhovuje. Více se můžete dočíst v Cpufreq – pro procesory mnoha frekvencí
#configuration for cpufreq control # valid governors: # ondemand, performance, powersave, # conservative, userspace governor="ondemand" # valid suffixes: Hz, kHz (default), MHz, GHz, THz min_freq="1GHz" max_freq="1.667GHz"Pro správnou funkci změny frekvence je nutno při bootování spouštět démony 'acpid', 'cpufreqd', 'laptop-mode'. Nyní po restartu a nabootování systému již s démony funguje správa napájení procesorů bezproblémů.
Tento návod vznikl při zkoumání možností správy a spotřeby napájení notebooku s 64-bitovým procesorem Intel Core 2 Duo T5500@1660 MHz. Během testování jsem narazil zajímavý problém, kdy při použití určitých kombinací programů a démonů nefungovala dobře správa napájení procesoru - buď fungovala změna frekvence pouze u jednoho jádra a druhé běželo na nejvyšší frekvenci nebo nešlo přepnout na jinou frekvenci.
Tiskni
Sdílej:
available frequency steps: 1.66 GHz, 1.33 GHz, 996 MHz
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.