Nem rég vettem egy új laptopot: a címben is szereplő HP4530s-t, nagyon jó áron sikerült hozzájutnom, és rendkívül elégedett vagyok vele; a várakozásokkal ellentétben nagyon rövid idő alatt sikerült minden hardvert életre kelteni. Természetesen nem véletlenszerűen választottam ki ezt a gépet, SUSE Linux Enterprise 11 rendszerrel is árulják, és a neten egy kis utánaolvasgatás után úgy láttam, hogy elég szépeket írtak a gépről és meglepően kevés hibáról olvashattam.
A legújabb Backports verzióját tettem fel a Crunchbang-nek, a telepítés után minden hardver tökéletesen működött, azonban rövid idő után észleltem, hogy rendkívűl forró a gép és már nagyon hangosak a ventillátorok. Egy rövid pillantással a Conky-ra láttam, hogy majdnem 70 fokos a gép: úgy döntöttem, hogy a rendszer finomhangolásába kezdek. Ekkor a rendszer 28 W-ot fogyasztott, ami miatt körülbelül 40 perc alatt le is merült.
Egy hőmérséklet teszt után láttam, hogy a gép legforróbb része a dedikált AMD Radeon HD 6470M videókártya. Első lépésként tehát ezt kell kikapcsolni:
Ezt egy vgaswitcheroo nevű programmal tehetjük meg. Ahhoz, hogy ez a program elérhető legyen a gépen (/sys/kernel/debug mappában); először csatoljuk ezt a könyvtárat:
echo "none /sys/kernel/debug debugfs defaults 0 0" | sudo tee -a /etc/fstabAdjuk hozzá kernel paraméterként Grubhoz a következőt:
modeset=1Ehhez
sudo gedit /etc/default/grub
és a GRUB_CMDLINE_LINUX_DEFAULT részhez írjuk be az idézőjelek közé.
Ahhoz, hogy a változtatásokat érvénybe léptessük generáljunk új Grubot:
Ahhoz, hogy a változtatásokat érvénybe léptessük generáljunk új Grubot:
sudo update-grub2És a biztonság kedvéért, hogy láthassuk majd a vgaswitcheroo programot:
sudo chown $USER /sys/kernel/debug/és rakjuk be blacklistbe a videókártyát:
echo "blacklist radeon" | sudo tee -a /etc/modprobe.d/blacklist.confMajd végül kapcsoljuk ki a rendszer indulásakor a videókártyát:
sudo gedit /etc/rc.localmajd az "exit 0" elé írjuk be a következőt:
modprobe radeonEzzel a lépéssel több, mint 10 W-ot nyerhetünk, nálam a fogyasztás itt 17,7 W-ra csökkent.
echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
2. lépés: További kernel paraméterek hozzáadása
Továbbiakban néhány további kernel paramétert adunk a Grub-hoz, amik alapesetben ki vannak kapcsolva, mert néhány hardverkonfigurációnál elméletileg hibákat okozhatnak.
Ezt ugyanúgy tehetjük meg, mint az előző részben:
Ezt ugyanúgy tehetjük meg, mint az előző részben:
sudo gedit /etc/default/grubés a GRUB_CMDLINE_LINUX_DEFAULT részhez idézőjelek közé írjuk be a következőket:
pcie_aspm=force
i915.i915_enable_rc6=1
i915.i915_enable_fbc=1
i915.lvds_downclock=1
Ezek sorban: az első a PCI Express Active-State Power Management bekapcsolása, mely egyes hardvereknél nagy energiamegtakarítást eredményezhet, a második az Intel videókártya RC6 energiatakarékos üzemmódjának engedélyezése, a harmadik a Frame-Buffer Compression engedélyezése, mellyel az Intel videókártya tömöríti a képernyő frissítéséhez használt buffert, így kevesebb memóriát használ a videókártya, az utolsó pedig downclockolja az integrált Intel videókártyát. Az ilyen sorrendben történő alkalmazással lemértem, melyikkel mennyi energiát lehet megtakarítani:
Így változott a fogyasztás: 16,8W -> 11,6W -> 10,8W -> 10,6W. Láthatjuk, hogy ezekkel összesen több, mint 7 W-ot spóroltunk meg.
A kernel paraméterek érvénybe léptetéséhez, új Grub-ot kell generálni:
Így változott a fogyasztás: 16,8W -> 11,6W -> 10,8W -> 10,6W. Láthatjuk, hogy ezekkel összesen több, mint 7 W-ot spóroltunk meg.
A kernel paraméterek érvénybe léptetéséhez, új Grub-ot kell generálni:
sudo update-grub2Majd indítsuk újra a gépet.
3. lépés: Liquorix kernel telepítése
Korábban is használtam ezt a kernelt, tapasztalataim szerint gyorsabb vele a rendszer (és kicsit kevesebbet is fogyaszt). A Crunchbang startup scriptjében (cb-welcome) ugyan már nincs benne, de ezt megoldhatjuk mi magunk is. Az egyszerűség kedvéért találtam egy csomagot, ami .deb csomagként tartalmazza a kernelt és függőségeit. LETÖLTÉS ITT. (32 bit)
Végeredményben 17,6 W-al csökkentettük a rendszer fogyasztását, ami szerintem bárkinek jól jöhet, konnektor szegényes időkben.
További ~2 W-ot nyertem egy korábban már itt az oldalon bemutatott scripttel, amit tovább fejlesztettem, hamarosan azt is publikálom.
Addigis itt a végereményt mutató screenshot, a fogyasztásmérő program a powertop volt:
További ~2 W-ot nyertem egy korábban már itt az oldalon bemutatott scripttel, amit tovább fejlesztettem, hamarosan azt is publikálom.
Addigis itt a végereményt mutató screenshot, a fogyasztásmérő program a powertop volt:
A fogyasztást tehát 28W-ról 8,4W-ra csökkentettem, ami 19,6W nyereség. Ugyanez használati időben kifejezve: a gép 40 perc helyett 5 és fél órát bír ki. :)
Sok sikert a változtatásokhoz!
Update: [Energiaspóroló szkript]
Update2: CrunchBang 11 "Waldorf" fogyasztása kicsit megnőtt, induláskor 38W-ot fogyasztott, az oldalon leírt optimalizáció során végül 9.63W-ra sikerült lefogyasztani ezt:
Újabb Liquorix kernel telepítése itt.
Források:
Cikk a kernel paraméterekről
Rövid leírás a Vgaswitcheroo-ról (+ kisebb továbbfejlesztés, pl.: igényesebb vgaswitcheroo állító script, magyarázatok)
Liquorix kernel honlapja
A Liquorix kernel: .deb csomagok forrása + 64 bites változat is