O problémech se spotřebou počítačů při použití linuxového systému se ví už několik měsíců. První informace o tomto problému se objevily už v dubnu letošního roku. Tehdy testy ukázaly, že potíže se objevily s jádrem 2.6.35, které je už více než rok staré.
Další problémy pak byly objeveny v novějším jádře 2.6.38, které vyšlo na začátku letošního roku. Michael Larabel ze serveru Phoronix se věnoval odhalení konkrétního důvodu několik měsíců. Nakonec byl hlavní problém odhalen v technologii ASPM, která dovoluje na základních deskách vypínat PCI Express linky, které nejsou v danou chvíli potřeba.
Čtěte: Proč má linuxové jádro velkou spotřebu a co s tím?
Mohlo by se zdát, že tím, že je problém odhalen, je zároveň v podstatě vyřešen. V příští verzi jádra bude vše nějakým způsobem napraveno a můžeme vesele pokračovat v používání Linuxu na svých noteboocích. Opak je ale pravdou a zdá se, že Michael Larabel je stále jediným člověkem, který se spotřebě počítačů s Linuxem intenzivněji věnuje.
Nejenže se na opravě chyb nepracuje, ale další přibývají a dostávají se k uživatelům společně s novými verzemi jader. Podle testů z Phoronixu stoupla spotřeba jádra 3.0 o dalších 24 % a nejnovější testy ukázaly, že s jádrem 3.1 přijde další zvýšení spotřeby, až o 30 %.
Podtrženo a sečteno: za poslední rok, od jádra 2.6.38 k jádru 3.1, vzrostla spotřeba podle měření Michaela Larabela až o 76 %. Největší skok byl přitom pozorován u nového notebooku s procesorem Intel Core i5 2520M quad-core Sandy Bridge. Jádro 3.1 samozřejmě ještě není k dispozici, ale Larabel použij RC2 verzi z 21. srpna, která by měla v podstatě odpovídat finálnímu vydání.
V absolutních číslech je posun ještě výraznější: zatímco s jádrem 2.6.38 potřeboval notebook jen 13,2 W energie, s novým jádrem 3.1 vyžaduje už 22,8 W. To se samozřejmě výrazně projeví především při běhu na baterie. Spotřebu jednotlivých jader shrnuje tabulka:
verze jádra | spotřeba | nárůst |
2.6.38 | 13,2 W | – |
2.6.39 | 13,9 W | 5,3 % |
3.0 | 17,3 W | 31 % |
3.1 | 22,8 W | 72,7 % |
Problém navíc je, že pro využití plného potenciálu procesorů Sandy Bridge je potřeba nejnovější jádro nasadit. Nové jádro totiž na těchto procesorech navyšuje výkon aplikací až o desítky procent. Uživatel jako by se tedy měl rozhodnout, zda oželí kus výkonu a jeho počítač vydrží téměř dvakrát déle nebo naopak bude třeba přebootovat do nového jádra kvůli maximálnímu výkonu.
Michael Larabel zároveň uživatele uklidňuje, že nové problémy se týkají jen nových počítačů se Sandy Bridge. Testoval také starší ThinkPad s procesorem Intel Core i7 720Q, na kterém se nové problémy jádra 3.0 a 3.1 vůbec neprojevily. Starší potíže s ASPM se ho ale samozřejmě také týkají a počínaje jádrem 2.6.38 se jeho spotřeba zvýšila o 29 %.
Podle dostupných informací může za část problému ovladač i915, který má standardně funkci RC6. Ta umožňuje integrované grafické kartě přecházet do režimu snížené spotřeby, pokud karta zrovna nepotřebuje pracovat. Protože na některých počítačích tato vlastnost způsobovala pád, je v příslušném modulu standardně vypnutá. Pro opravu stačí jádru předat při startu parametr
i915.i915_enable_rc6=1
Na fóru serveru Phoronix uživatelé ještě doporučují zapnout další volby, ale varují před případnými problémy:
pcie_aspm=force i915.i915_enable_fbc=1 i915.lvds_downclock=1
Zarážející především je, že nikdo neřeší starší problémy, které už byly objeveny a vysvětleny, a přesto jsou stále součástí nových vydání. Dlouhodobé řešení je tedy zatím v nedohlednu. Budeme rádi, když se o své zkušenosti podělíte v diskusi s dalšími čtenáři.