Aewyn
aewyn@cloneshit.hu

2004.12.08

Ez a leírás arról szól, hogy használjuk ki az Athlon 64-es alaplapok energiatakarékos (Cool’n'Quiet) üzemmódját, és hogyan telepítsünk hőfokfüggő ventillátor-szabályzást. (Közben nem mellesleg tapossuk kicsinyt az ASUS K8V SE Deluxe alaplapját; csak épphogy.)

A leírásban a debian/sid eredeti 2.6.9-1-k7-es kernelére vonatkozik; ha 2.6-os debian kernelt használsz, akkor jó eséllyel passzolni fog a doksi.

Vigyázz! Ha ügyes vagy, tönkreteheted a processzort és/vagy az alaplapot, ami a legritkább esetben tesz jót az önbecsülésednek. Én szóltam.

A HOGYAN legújabb verziója itt érhető el: http://www.cloneshit.hu/index.php?p=1759
txt-ben itt: http://www.cloneshit.hu/aewyn/powernow-k8.txt

Én pedig itt, ne kímélj: aewyn@cloneshit.hu

Licensz: GNU FDL

További infó:
Cool’n'Quiet

Tartalom:

1., Cool’n'Quiet: Powernow-k8
2., HW figyelés
3., Fancontrol

1., Cool’n'Quiet: Powernow-k8

A C’n'Q a terheléstől függően menet közben képes változtatni a processzor órajelét és feszültségét, így a rendszer kevésbé melegszik, kevésbé terheli a tápegységet és így a teljes rendszer csendesebb lehet.

A telepítéshez első lépésben a kernel modulokat kell betölteni:

# modprobe powernow-k8
# modprobe cpufreq-userspace

Ahhoz, hogy ezek újraindítás után betöltődjenek, természetesen ki kell velük egészíteni az /etc/modules állományt.

Majd telepítenünk egy kicsinyke démont:

# apt-get install powernowd

A jó hír az, hogy ezzel elviekben készen vagyunk, a C’n'Q-nak innentől működnie kell. A rossz hír az, hogy az ASUS K8V SE Deluxe és a powernow-k8 nem szereti egymást:
http://lists.debian.org/debian-kernel/2004/11/msg00297.html

in arch/i386/kernel/cpu/cpufreq/powernow-k8.c comment line 639 out:
return -ENODEV;

Ezzel az apró módosítással a kernelmodul működni fog. Fordítottam neked egy javított modult, letöltheted innen:
http://www.cloneshit.hu/aewyn/powernow-k8.ko

Ezzel kell felülírni az
/lib/modules/2.6.9-1-k7/kernel/arch/i386/kernel/cpu/cpufreq/powernow-k8.ko
állományt, majd betölteni végre a modult és újraindítani a démont:

# modprobe powernow-k8
# modprobe cpufreq-userspace
# /etc/init.d/powernowd start

Állítólag a 2.6.10-es kernelmodulban ez már működik varázslat nélkül is, hmmm.

A K8V SE Deluxe lapon NE frissíts BIOS-t a gyári CrashFree rendszerrel, mert elhalálozik a BIOS. Komolyan.
BIOS infórmáció az ASUS oldalán
elhalálozott BIOS

2., HW figyelés

A hőmérséklet/feszültség/fordulatszámok figyelésére telepítsük az lm-sensors-t.

De előtte olvassunk utána, hogy nem nyírja-e ki kedves ThinkPad-ünket. Esetleg.
Szegény ThinkPad
www.linux-thinkpad.org
Lm-sensors README
Lm-sensors helyett használható az ACPI is, bár ez a K8V-n kevés sikerrel kecsegtet.


# apt-get install lm-sensors

A megfelelő modulokat a sensors-detect keresi meg nekünk; K8V-re már megkerestem, csak be kell tölteni őket:

# modprobe i2c-viapro
# modprobe i2c-isa
# modprobe w83627hf

és tesztelni:

# sensors

Ahhoz, hogy a K8V az alacsony fordulatszámokat egyáltalán megmutassa, módosítani kell az /etc/sensors.conf állományt: keressük meg a

chip "w83697hf-*"

szekciót, majd bővítsük a set listát:

set fan1_div 16
set fan2_div 16

A változásokat etessük meg:

# sensors -s

Örül.

3., Fancontrol

A K8V rendelkezik egy csodás Q-fan rendszerrel, amely képes a processzorventi fordulatszámát a hőmérséklettől függően változtatni. Ez a rendszer azonban egyrészt használhatatlan, másrészt a kernelmodulok a betöltődés után adnak az egésznek egy maflást. Cserébe az eredetinél egy sokkal jobb megoldást használhatunk.

A /sys megfelelő részén akár kézzel is módosíthatjuk a ventillátor fordulatszámát:

# echo 255 > /sys/bus/i2c/devices/5-0290/fan2_pwm

Ezzel maximumális fordulatszámra állítottuk be a processor ventijének fordulatszámát. 255-nél kisebb értéket megadva a fordulatszám csökkenni fog, 100 körül a ventillátor megáll, tehát csak ÓVATOSAN.

Na még egyszer: LEÁLLHAT A PROCESSZORVENTILLÁTOR !!!

Ami Athlon 64 és egy tisztességes hűtő esetén nem olyan katasztrófa, akár percekig is elketyeghet így, de azért mégiscsak.

A továbbiakban ezért erősen javasolt a processzor ventillátorát átdugni egy másik tüskére (célszerűen a Chassis Fan helyére, mert ezt monitorozza még a chip), majd a proc. ventillátorának helyére a házventit kötni, és azzal játszadozni. Ha zavar a processzorventillátor zaja, akkor érdemes fordulatszám-szabályzót közbeiktatni. Egy Zalman CU7000-es hűtő minimális fordulatszám mellett gyakorlatilag hangtalan és 35 fokon tartja a processzort.

Az lm-sensors mellé csomagolt fancontrol programmal a szabályzást hőmérsékletfüggővé tehetjük. A fancontrol-nak szüksége van a /etc/fancontrol konfigurációs állományra. Ezt a

# pwmconfig

állítja elő nekünk. Az én állományom a következőket tartalmazza:

INTERVAL=10
FCTEMPS=5-0290/fan2_pwm=5-0290/temp2_input
FCFANS= 5-0290/fan2_pwm=5-0290/fan2_input
MINTEMP=5-0290/fan2_pwm=40
MAXTEMP=5-0290/fan2_pwm=45
MINSTART=5-0290/fan2_pwm=100
MINSTOP=5-0290/fan2_pwm=255

Azaz 40 foknál kapcsol be a ventillátor, és 45 foknál már maximális fordulaton pörög. 10 másodpercenként figyeli a hőmérsékletet, ami itt a processzor hőmérséklete, de ez átállítható a ház hőmérsékletére.

A szabályzás ezzel indul:

# fancontrol

Ettől persze elegánsabb, ha démonként indítjuk. Dean Takemori munkája alapján hegesztettem debian-ra egy initscript-et, letölthető innen:
http://www.cloneshit.hu/aewyn/fancontrol.sh

A működéséhez szükséges a daemon csomag:

# apt-get install daemon

Az initscriptet be kell másolni az /etc/init.d alkönyvtárba, indítani így lehet:

# /etc/init.d/fancontrol.sh start

Leállítani pedig meglepő módon így:

# /etc/init.d/fancontrol.sh stop

Ha szeretnénk, hogy indulás után ez rögvest működjön, akkor készíteni kell egy symlinket:

# ln /etc/init.d/fancontrol.sh /etc/rcS.d/S37fancontrol.sh -s

Az Athlon 64 terhelésre sem forrósodik fel túlságosan, így tényleg érdemesebb ilyenkor a házból eltávolítani a felmelegedett levegőt, többet érünk el vele, mint a processzor nagyobb hűtésével. Különösen igaz ez csendes, fordulatszám-szabályzós tápegységek mellett, ahol nagyobb terhelés esetén mindenképpen érdemes külön ventivel szellőztetni a házat. Erre tökéletesen alkalmas a fancontrol.

További infó:
Q-fan boldogság
Fancontrol a debian levlistán
Leírás a fordulatszám-szabályzásról

No, béke veletek.

Popularity: 3% [?]