Test: Změřili jsme nenažranost webových prohlížečů

Tentokrát zapomeňte na SunSpider a další profláknuté benchmarky prohlížečů. Naprogramovali jsme vlastní a svlékli jsme Chrome, IE, Firefox a Operu donaha.

Po roce jsme opět změřili webové prohlížeče a jejich nároky na systémové prostředky. Tentokrát jsme tedy neměřili programy profláknutými nástroji jako třeba zátěžovými testy Javascriptu (SunSpider, Dromaeo, Octane), ale opravdu jsme zkoumali, kolik megabajtů paměti zhltne hladový prohlížeč při takovém tom běžném domácím surfování a jakou měrou vytíží procesor, který je zodpovědný za vyšťavení baterky v notebooku.

TIP: sledujte vše o prohlížečích na Živě.cz (RSS)

Co jsme měřili

Náš test trval pět minut a během této doby jsme postupně otevírali deset panelů ve zcela čistých instalacích Chromu, Firefoxu, Internet Exploreru a Opery. V každém panelu jsme provedli nějakou akci a na konci tak byl program slušně vytížený s desítkou otevřených stránek.

Testovací prohlížeč.png
Na konci testu bylo v prohlížeči otevřeno deset panelů

Seznam postupně otevíraných panelů a jejich akce

  1. Živě.cz: rolování, zobrazení článku dne, klepnutí na obrázek
  2. E15.cz: rolování, zobrazení článku dne
  3. Google.cz: vyhledání slova „palačinky“, prohlížení obrázků
  4. Mapy.cz: posouvání mapy z Prahy do Bukureště, vyhledání Pardubic
  5. Mapy.google.cz: přiblížení, přepnutí do Street View, otáčení pohledu
  6. YouTube.cz: vyhledání „trailer HD“, přehrávání ukázky Hobita v 720p
  7. iVysilani.cz: spuštění aktuálního živého přenosu
  8. Vitalmtb.com: rolování, zobrazení článku dne
  9. Idos.cz: vyhledání trasy Brno – Praha
  10. Tv.seznam.cz: přepnutí do řádkového programu, posouvání programu

Jak jsme měřili?

Náš jednoduchý program napsaný pro tyto účely v C# každých pět sekund zaznamenal aktuální „spotřebu RAM“ programu a jeho celkový procesorový čas od spuštění. Jelikož se mnohé prohlížeče skládají z hromady procesů, všechny jsme je sečetli dohromady. Internet Explorer 10 a Firefox spouštějí dodatečné procesy pro Flash Player, ten jsme tedy také připočetli k celkové zátěži.

Spotřeba RAM je v uvozovkách, protože ji nelze vyjádřit jedním číslem. Část paměti si proces zarezervuje, část skutečně použije a část nakonec sdílí i s jinými spuštěnými procesy. Není to jednoduché, pro srovnání jsme ale počítali tzv. soukromou pracovní sadu, kterou ve výchozím stavu zobrazuje i Správce úloh ve Windows a toto číslo se blíží tomu, kolik paměti má program momentálně vyhrazeno jen a jen pro sebe.

Správce úloh.png
Jako spotřebu RAM jsme počítali velikost soukromé pracovní sady, která se jako výchozí používá i ve Správci úloh Windows

V případě procesorového času se zase jedná o počet milisekund, které strávil procesor počítáním úloh vybraného programu od jeho spuštění. Když tedy program po jedné minutě běhu spotřebuje minutu procesorového času, znamená to, že musel na jednojádrovém procesoru po celou dobu vytěžovat systém na maximum (ve skutečnosti je to ještě složitější díky MT technologiím aj.)..

 KloboukCPURAMBenchmark.png
Náš malý měřící program, který postupně počítá spotřebu RAM a CPU

Když budete procesorový čas postupně ukládat a pak jej jako my vynesete na graf, můžete studovat dynamiku chování programu v čase. Když je křivka spotřeby času CPU vodorovná, znamená to, že momentálně program nijak nevytěžuje procesor. Když křivka zamíří vzhůru, znamená to, že program vytěžuje procesor.

Tak, teorii máme za sebou a teď hurá na výsledky.

Výsledky: Test spotřeby RAM

Jak je patrné z obrázku níže, o největší kus RAM si řekly prohlížeče Chrome a Internet Explorer. Na první pohled je patrný rozdíl až několika set megabajtů od druhé velmi podobné dvojice Firefox a Opera.

Spotřeba RAM.png

Vyšší spotřeba RAM nemusí automaticky znamenat problém, každý z prohlížečů se totiž chová trošku jinak. Jeden veškerá data okamžitě ukládá do vyrovnávací paměti na disk, druhý ji naopak drží v paměti o něco déle. Jeden prohlížeč může provádět nejrůznější prerendering, kdy se některé stránky přednačítají, aby byly rychleji dostupné, druhý toto nedělá.

Všimněte si v grafu vodorovných ploch. V tu chvíli prohlížeče přehrávaly video z YouTube a iVysílání. Data se streamují, doslova protékají a tedy se příliš nepodílejí na růstu spotřeby RAM. 

Výsledky: Test zátěže procesoru

Stejné rozdělení do dvojic je patrné i z grafu postupné spotřeby procesorového času. Ve vyšší dvojici si ale vystřídaly své role Internet Explorer s Firefoxem. IE se tentokrát připojil k Opeře a během pěti minut si řekl procesoru o co nejmenší díl práce. Pod touto proměnou se mohla velkou měrou podepsat třeba GPU akcelerace, tedy přesun podstatné části práce na grafický čip, který v tomto testu neměříme.

Spotřeba CPU.png

Opět se nabízí otázka, proč Firefox s Chromem vytěžovaly procesor více než zbývající dvojice. Nemusí to být hned špatný návrh, ale jednoduše vlastnost – typicky třeba DNS prefetching, který předběžně provádí DNS dotazování, aby mohl po klepnutí na adresu prohlížeč rychleji zareagovat. 

Pozor na doplňky

Jako hlavní prohlížeč používám Chrome, který mám vybavený množstvím doplňků. Nejsou to žádné šílenosti. Jeden se stará o RSS, druhý mě informuje o aktivitě na Google+, třetí otevírá obrázky namísto v nových oknech v lightboxu (jen v nové vrstvě, ale stále na původní stránce) a tak dále. Jsou to drobné úkony, dohromady mám ale podobných rozšíření sedmnáct. To je už dost a samozřejmě se to podepíše na spotřebě systémových prostředků. Stoupne jak spotřeba RAM, tak procesorového času.

 Spotřeba RAM bez doplňků.png Spotřeba RAM s doplňky.png
Vlevo je spotřeba paměti Chromu bez aktivovaných doplňků, vpravo pak Chrome se všemi aktivními doplňky. Všimněte si, že na pozadí běží hromada nových procesů a celková zátěž na paměť se téměř ztrojnásobila. 

Kdo je vítěz?

Jelikož byl tento test zaměřený výhradně na velikost stopy prohlížeče v systémových prostředcích, odpověď je nasnadě – Opera. Jenže jak už tomu bývá, na světě existuje jediný objektivní test webového prohlížeče, tedy jeho každodenní používání.

Jelikož jsme testovali všechny prohlížeče v rychlém sledu za sebou jdoucích úkolů, mohli jsme sledovat i to, který z prohlížečů se nejméně zadýchá při otevírání nových panelů, který jako první zareagoval při zobrazování Flash Playeru na YouTube a tak dále. Zde jsem měl velmi těžko měřitelný pocit, že nejrychleji reagoval na Windows 8 Internet Explorer 10.

Opera.png
Vítězem našeho testu se stala Opera s nejmenší CPU stopou
a společně s Firefoxem i s nejmenší stopou v RAM

Jenže v roce 2013 už často nejde ani o zátěž na systém, ani o pocitovou rychlost, ale o služby a výbavu. Člověka, který je zvyklý na chování Firefoxu a jeho synchronizaci, budete jen těžko přetahovat k Opeře a přesvědčeného Operistu zase jen tak nedonutíte k přechodu na Chrome. Stejně tak Internet Explorer může těžit ze své svižnosti, na stranu druhou je to ale z hlediska výbavy velmi jednoduchý prohlížeč s elementární a zatím slabou synchronizací bez možnosti pokročilé konfigurace.

Pokud však vlastníte slabší počítač a každý volný megabajt operační paměti je pro vás naprosto klíčové zboží, tento test vám může pomoci v rozhodování.

TIP: sledujte vše o prohlížečích na Živě.cz (RSS)


Měření probíhalo vždy dvakrát pro ověření případných divokých odchylek na běžném kancelářském notebooku Dell Latitude E5410 s 32bitovou verzí Windows 8.

Diskuze (180) Další článek: Steam hlásí 50 her pro Linux a vzrůstající oblibu Windows 8

Témata článku: , , , , , , , , , , , , , , , , , , , , , , , , ,