Žere váš Firefox hodně RAM? Bude hůř, změřil vývojář Mozilly

16. 2. 2016

Sdílet

 Autor: Redakce

Eric Rahm, který již dva roky v Mozille pracuje na paměťových optimalizacích Firefoxu, změřil, jak na tom prohlížeč bude po přechodu na architekturu Electrolysis (e10s). Ta je konečně po vzoru konkurence vícevláknová, což přinese lepší bezpečnost i výkon, ale zároveň zvýšené paměťové nároky a konec podpory stávajících doplňků.

Electrolysis přijde již letos

O projektu Electrolysis se mluví již sedm let, ale nasazení se stále odkládá. Firefox se totiž kvůli němu musí celý přepsat. Zároveň není snadné udělat tlustou čáru za starými rozšířeními a začít od píky. Proto je vývoj pomalý.

Mozilla Firefox (logo 2013)

Firefox ale díky němu bude stabilnější a snad i svižnější. Moderní počítače i mobily využívají vícejádrové procesory, ale Firefox neumí jejich výhody využít. Samotný prohlížeč a rozšíření běží v jednom vláknu, akorát zásuvné moduly jako Flash Player apod. mají vlastní vlákna. Rozdělením do více procesů se zabrání problémům, kdy jeden jedna stránka shodí celý prohlížeč.

Chrome například zakládá vlastní procesy pro všechny otevřené panely, samotný prohlížeč a doplňky. Mozilla bude postupovat opatrněji. První verze přinese jen jeden proces navíc (tedy jeden pro prohlížeč a jeden pro obsah). V pozdějších verzích přibude podpora více vláken.

Pro začátek jen 20 % RAM navíc

Ale zpět z Rahmovi a jeho pokusu. Vytvořil si test, ve kterém postupně v 30 panelech otevřel 100 stránek, každou nechal otevřenou 10 sekund. Měřil přitom využití paměti ve všech fázích testu. Při aktivaci jednoho procesu navíc využil experimentální Firefox o 10–20 % více RAM než jeho stávající verze. Výsledky se lišily na různých operačních systémech, ale rozdíly nebyly extrémní. Při využití 8 procesů navíc se náročnost zdvojnásobila.

0 procesů 1 proces 2 procesy 4 procesy 8 procesů
Ubuntu (FF 64b) 190/457 MB 232/544 MB 223/586 MB 223/714 MB 229/871 MB
Windows 7 (FF 32b) 172/461 MB 212/537 MB 207/631 MB 204/800 MB 213/1099 MB
Windows 7 (FF 64b) 245/618 MB 276/699 MB 275/805 MB 275/1061 MB 295/1334 MB
OS X (FF 64b) 319/889 MB 350/1038 MB 342/1243 MB 336/1397 MB 336/1694 MB

Ve sloupcích jsou výsledky za x procesů navíc (0 procesů je současný Firefox). V buňkách je využití RAM po startu prohlížeče / otevření 30 panelů.

Rahm dále srovnal Firefox (s jedním procesem navíc) s ostatními prohlížeči. Ze stejného testu vyšel jako vítěz Safari. Na OS X spotřeboval polovinu paměti, kterou potřeboval Firefox, a třetinu paměti u Chromu. Na Ubuntu i Windows 7 se Firefox choval stejně jako IE 11 a jen o něco hůř než Safari.

Využití paměti Firefoxu s architekturou Electrolysis
Využití paměti Firefoxu s architekturou Electrolysis

ICTS24

Mozillu čeká ještě hodně práce. Electrolysis bude poprvé aktivní u Firefoxu 46, který vyjde 18. dubna. Zatím bude využívat jeden proces navíc pro webové stránky. Doplňky a funkce pro usnadnění přístupu zatím poběží v hlavním vlákně.

Zdroj: Eric Rahm (1, 2) via Mozilla.cz