Slovo úvodem
Před čtyřmi lety vyšel na Rootu Velký test sedmi webových prohlížečů. V článku byly srovnány některé technické parametry tehdejších webových prohlížečů. Autor (Tomáš Guzdek) zároveň položil několik otázek, na něž už dnes známe odpověď…
Rozhodli jsme se zopakovat tehdejší testy se současnými prohlížeči na současném systému a podívat se, které parametry se změnily a jak. Snažili jsme se držet původní metodiky všude, kde to mělo smysl. Vynechali jsme z testu výsledky měření některých parametrů, které jsou dnes už nepodstatné, jako například rychlost startu prohlížeče, naopak jsme přidali měření rychlosti JavaScriptu, která je dnes mnohem důležitější pro uživatele než např. výše zmíněná rychlost startu.
Tehdy a nyní
V původním testu mezi sebou zápasily tehdejší aktuální verze prohlížečů. Konkrétně šlo o Konqueror 3.4.2, Kazehakase 0.2.9, Epiphany 1.6.4, Firefox 1.0.6, DeerPark alfa 2 (Firefox 1.1), Opera 7.54, Opera 8.02, Galeon 1.3.21 a Mozilla Suite 1.7.11. My jsme dnes nasadili nejaktuálnější verze prohlížečů. Navíc jsme nasadili do soutěže aktuální sestavení prohlížeče Chromium. U Opery jsme měřili jen poslední verzi, naproti tomu jsme u Firefoxu měřili jak poslední aktualizaci verze 3.0, tak verzi 3.5. Navíc přibyl do testu prohlížeč Arora. Dnešní sestavu tedy tvoří: Konqueror 4.2.2, Kazehakase 0.5.4, Epiphany 2.26.1, Firefox 3.0.11, Firefox 3.5.1, Opera 9.64, Galeon 2.0.6, Arora 0.5 a Chrome 3.0.195. Roli benjamínka v původním testu hrál Firefox, který se mezitím stal druhým nejpoužívanějším prohlížečem vůbec. Většina prohlížečů postoupila alespoň o jednu major verzi (Firefox rovnou o dvě).
Původní testy probíhaly na notebooku s procesorem Pentium II 366 MHz, 192 MB RAM s distribucí Gentoo a prostředím Gnome. Tentokrát jsme zvolili populární distribuci Ubuntu (prohlížeč Konqueror byl měřen v distribuci Kubuntu, pro srovnání byl v Kubuntu měřen i Firefox 3.5.1). Byla vybrána verze 9.04, byla nainstalována se standardním nastavením v češtině, a po instalaci byly staženy a nainstalovány všechny aktualizace. Pro snazší práci s jednotlivými prohlížeči jsme nainstalovali systém jako virtuální stroj ve VirtualBoxu (1 procesor, 512 MB RAM, ) a udělali pro každý testovaný prohlížeč vlastní klonovanou kopii aktualizovaného systému. Jednotlivé instalace se tak nemohly ovlivňovat.
Naměřené údaje jsou, pokud není uvedeno jinak, aritmetickým průměrem z deseti měření. Při měření se žádná z hodnot neodchylovala výrazněji od průměru. Prohlížeče byly instalovány, jak je výše uvedeno, na aktuální kopii čistě nainstalovaného operačního systému v základním nastavení. Pokud jsou uvedena procenta výkonu, jsou vztažena k nejrychlejšímu prohlížeči v daném testu.
Rychlost startu
U rychlosti startu prohlížečů byl vidět posun snad nejzřetelněji. Zatímco v předchozím testu trval studený start mezi 5,6 a 21,95 sekundami u prázdné stránky a mezi 8,6 až 25,4 sekundami u prohlížeče s jednoduchou stránkou, dnešní prohlížeče startovaly v průměru za 3,8 sekundy, přičemž ty nejrychlejší to zvládly za 1.8 sekundy. Tedy čas, za který prohlížeč nastartuje, je naprosto zanedbatelný. Vzhledem k tomu, že v současnosti mají uživatelé prohlížeč otevřený většinu času, hraje prodleva při spuštění zcela zanedbatelnou roli. Proto jsme v testu na rychlost startu nekladli nijak velký důraz.
Zde je tabulka naměřených hodnot pro studený start prohlížečů. V tomto testu byly měřeny doby prvního startu jednotlivých prohlížečů. Aby měly jednotlivé prohlížeče rovné podmínky, měření probíhalo ihned po nabootování PC a bylo vždy provedeno pouze jedno měření jednoho prohlížeče. Rozdíly mezi rychlostí spouštění prohlížeče s prázdnou stránkou a s jednoduchou testovací stránkou byly minimální a na hranici chyby měření, takže jsme měřili pouze rychlost studeného startu s jednoduchou testovací stránkou.
Prohlížeč | Verze | Čas startu (sec) |
---|---|---|
Opera | 9.64 | 3,70 |
Epiphany | 2.26.1 | 4,06 |
Galeon | 2.0.6 | 2,13 |
Kazehakase | 0.5.4 | 1,80 |
Arora | 0.5 | 3,60 |
Firefox | 3.0.11 | 5,70 |
Firefox | 3.5.1 | 5,30 |
Chrome | 3.0.195 | 2,70 |
Konqueror (KDE) | 4.2.2 | x,xx |
Firefox (KDE) | 3.5.1 | x,xx |
Proti minulému testu je vidět velmi výrazné zrychlení – čas spuštění klesl na průměrné 3,8 sekundy. I nejpomaleji spouštěný prohlížeč, Firefox 3.0.11, s časem téměř dvojnásobným proti průměru, stále startuje v čerstvě nabootovaném systému za necelých šest vteřin, což je srovnatelné s nejrychlejším studeným startem z předchozího testu (Konqueror v KDE).
Při studeném startu musí systém zavést do paměti veškeré potřebné knihovny
Teplý start
Zde byly měřeny doby opakovaného startu daného prohlížeče. Před tímto testem byl každý prohlížeč cca 5× spuštěn a vlastní časy startu byly měřeny až po ustálení kolem určité hodnoty, kdy se prohlížeč mohl naplno „opřít“ o cache a podobně.
Prohlížeč | Verze | Čas startu (sec) | % |
---|---|---|---|
Opera | 9.64 | 2,00 | 133 |
Epiphany | 2.26.1 | 2,10 | 140 |
Galeon | 2.0.6 | 2,07 | 138 |
Kazehakase | 0.5.4 | 1,59 | 106 |
Arora | 0.5 | 1,50 | 100 |
Firefox | 3.0.11 | 2,40 | 160 |
Firefox | 3.5.1 | 2,30 | 153 |
Chrome | 3.0.195 | 1,67 | 111 |
Konqueror (KDE) | 4.2.2 | 2,30 | 153 |
Firefox (KDE) | 3.5.1 | 2,10 | 140 |
Pro zajímavost ještě graf, v němž jsou znázorněny rychlosti studeného a teplého startu.
Výkon renderovacího jádra
Pro účely tohoto měření byla použita stejná stránka jako v předchozím testu. Stránka obsahuje 3000× tabulku o dvou sloupcích a sedmi řádcích. V tabulce je obsažen jeden obrázek a vzhled tabulky je zadán pomocí kaskádových stylů. Vlastní odečet hodnot začal opět až po pátém vykreslení, kdy již došlo k ustálení hodnot – stejně jako v předchozím testu.
Prohlížeč | Verze | Čas vykreslování (sec) | % |
---|---|---|---|
Opera | 9.64 | 4,08 | 162 |
Epiphany | 2.26.1 | 9,70 | 386 |
Galeon | 2.0.6 | 9,66 | 384 |
Kazehakase | 0.5.4 | 10,11 | 402 |
Arora | 0.5 | 4,43 | 176 |
Firefox | 3.0.11 | 8,94 | 356 |
Firefox | 3.5.1 | 9,96 | 396 |
Chrome | 3.0.195 | 2,51 | 100 |
Konqueror (KDE) | 4.2.2 | 3,27 | 130 |
Firefox (KDE) | 3.5.1 | 7,88 | 313 |
V testu zvítězil naprosto přesvědčivě Google Chrome. Za ním se umístil Konqueror (s jádrem KHTML, tedy s předchůdcem WebKitu použitého v Chrome). Rychlostně těmto prohlížečům konkuruje jen Opera a Arora. Ostatní prohlížeče měly časy podstatně horší.
Rychlost JavaScriptu
Rychlost JavaScriptu je dnes, v době čím dál náročnějších webových aplikací, mnohem důležitější než rychlost startu prohlížeče, proto jsme proti původnímu testu přidali i měření rychlosti JavaScriptu. Pro měření jsme použili benchmark SunSpider od SUNu. Výsledkem tohoto benchmarku je průměrný čistý čas, potřebný na provedení všech operací (testují se např. bitové operace, matematické operace, přístup k datům apod.)
Rychlost JavaScriptu asi nejlépe ilustruje následující graf:
Čím kratší čas, tím lepší je výsledek. K dispozici je i podrobná přehledová tabulka všech testů, z níž můžete zjistit podrobnosti o výkonu jednotlivých prohlížečů v jednotlivých testech.
Použitá paměť
Paměť byla měřena, stejně jako v předchozím testu, ihned po spuštění prohlížeče s vykreslenou jednoduchou stránkou. Navíc jsme měřili obsazenou paměť bezprostředně po doběhnutí testu SunSpider.
Hodnoty byly odečteny programem top a bylo zachováno i jeho značení.
- Číslo označované VSZ ( VIRT) udává jinak řečeno velikost virtuální paměti procesu. To znamená jednak data, jednak i soubory procesem namapované do paměti (minimálně kód programu samotného a přilinkovaných knihoven).
- Druhé populární číslo se často označuje zkratkou RSS ( RES) a říká nám, kolik fyzické operační paměti program v danou chvíli skutečně zabírá. Zde nejsou ovšem započteny ani stránky paměti, které jsou zrovna náhodou odswapované.
- Hodnota SHR udává „sdílenou“ paměť. Např. libc má namapovaný prakticky každý program, a tak hezky nabobtná jeho velikost, ovšem přitom je v paměti ve skutečnosti samozřejmě pouze jediná kopie. Problémy vyvstávají kolem (obvykle vláknovitých) programů, které si spustí hromádku procesů společně sdílejících velkou část paměti – tu pak najdete započítanou u každého z procesů. top takovou paměť vypisuje ve sloupečku SHR – to ovšem neznamená, že všechna ta paměť musí být nutně opravdu sdílená! Např. pokud je program dynamicky slinkován s nějakou obskurní knihovnou, pravděpodobně bude zahrnuta v SHR, i když jde o jediný proces, který v dané chvíli knihovnu využívá.
Jak je patrné, problematika využívání paměti není zdaleka tak jednoduchá, jak by se na první pohled zdálo, a proto je zapotřebí se na zde uváděné hodnoty dívat s jistým nadhledem a automaticky neodsuzovat ten či onen prohlížeč kvůli několika MB v určitém sloupci.
Prohlížeč | Verze | prohlížeč s jednoduchou stránkou | prohlížeč po SunSpideru | Rozdíl | ||||||
---|---|---|---|---|---|---|---|---|---|---|
VIRT (MB) | RES (MB) | SHR (MB) | VIRT (MB) | RES (MB) | SHR (MB) | VIRT (MB) | RES (MB) | SHR (MB) | ||
Opera | 9.64 | 70 | 33 | 19 | 105 | 47 | 21 | 35 | 14 | 2 |
Epiphany | 2.26.1 | 96 | 32 | 20 | 143 | 49 | 23 | 47 | 17 | 3 |
Galeon | 2.0.6 | 96 | 33 | 21 | 129 | 51 | 22 | 33 | 18 | 1 |
Kazehakase | 0.5.4 | 94 | 40 | 22 | 136 | 60 | 23 | 42 | 20 | 1 |
Arora | 0.5 | 88 | 32 | 22 | 89 | 36 | 22 | 1 | 4 | |
Firefox | 3.0.11 | 121 | 37 | 21 | 144 | 68 | 21 | 23 | 31 | |
Firefox | 3.5.1 | 147 | 44 | 20 | 172 | 51 | 21 | 25 | 7 | 1 |
Chrome | 3.0.195 | 120 | 22 | 15 | 276 | 43 | 19 | 156 | 21 | 4 |
Konqueror (KDE) | 4.2.2 | 97 | 30 | 22 | 226 | 50 | 30 | 129 | 20 | 8 |
Firefox (KDE) | 3.5.1 | 124 | 36 | 18 | 181 | 49 | 21 | 57 | 13 | 3 |
Přehledně shrnují paměťové nároky následující grafy:
Paměťové nároky prohlížeče s prostou stránkou
Paměťové nároky prohlížeče po testu SunSpider
Rozdíl
Jednoznačně nejvíc paměti si vezme Firefox 3.5, následovaný Firefoxem 3.1 a prohlížečem Chrome. Zajímavá je ale velikost paměti obsazená po provedení SunSpider testu – tato hodnota vypovídá o tom, jak si po sobě jednotlivé prohlížeče „uklízí“. Naprosto nejvyšší nárůst zaznamenal prohlížeč Chrome a Konqueror, nárůsty u prohlížeče Firefox byly spíše průměrné. Výjimkou byl prohlížeč Arora, jehož paměťové nároky po testech zůstaly stejné jako před testem.
Co z měření vyplývá?
Na testu byly zajímavé dvě věci – jednak samotné měření, jednak srovnání s předchozím testem, který proběhl před čtyřmi lety. Lze tak hezky demonstrovat posun, který se v této oblasti odehrál.
Samosebou by bylo zpozdilé přímo porovnávat například dnešní dobu startu prohlížeče s tehdejší rychlostí, a vyvozovat z toho vývoj v oblasti prohlížečů. Za čtyři roky se především posunula úroveň a výkon hardwaru, který má na rychlost spouštění mnohem větší vliv než veškeré optimalizace. Navíc se změnil i způsob používání prohlížeče – dnes je mnohem běžnější mít prohlížeč spuštěný neustále, takže čas jeho startu je v porovnání s celkovou dobou jeho používání naprosto marginální. Test navíc prokázal, že tyto časy jsou u moderních prohlížečů naprosto zanedbatelné.
Mnohem větší vliv na uživatelský prožitek tak mají faktory, jako je rychlost provádění JavaScriptu, pohodlí používání či dostupnost rozšíření, částečně pak paměťové nároky, které mohou někdy řádně potrápit, jak vědí asi hlavně uživatelé Firefoxu.
V testu rychlosti vykreslování jednoznačně vedly prohlížeče s jádrem WebKit (Chrome, Arora, potažmo i Konqueror), kterým konkurovala jedině Opera. V rychlosti JavaScriptu vedl, předpokládatelně, opět Chrome s enginem V8 a další prohlížeče postavené na WebKitu. Konqueror postavený na KHTML (předchůdce WebKitu) naopak spolu s Operou celkem propadl. Velmi rychlý je i JavaScriptový engine ve Firefoxu 3.5, proti verzi 3.0 je vidět výrazný pokrok.
Jaký prohlížeč zvolit?
Doporučení záleží na spoustě faktorů – na předpokládaném použití, na konfiguraci či na rychlosti počítače. Obecně se dá říct, že v současnosti je tou nejlepší volbou buď prohlížeč s jádrem WebKit (pokud je vaší prioritou rychlost) nebo nový Firefox, pokud vám záleží na dostupnosti rozšíření.
Pro běh na sestavách s menším množstvím paměti je možné doporučit prohlížeč Arora, založený na jádru WebKit, nebo prohlížeč Opera. Naproti tomu je Firefox i v základní konfiguraci pěkným „bumbrlíčkem“. Z hlediska paměťové náročnosti nelze doporučit ani Chrome, který má s jednoduchou stránkou nároky srovnatelné s Firefoxem, ale po proběhnutí SunSpider testu (který zde může napodobit delší dobu používání) jeho paměťové nároky neúměrně narostou, na téměř dvojnásobek nároků Firefoxu.
Ostatní prohlížeče nijak výrazně nevybočovaly z průměru a dá se tak říct, že pro běžné používání vyhoví kterýkoli z nich. Můžete si vybrat dle svých sympatií k dané značce, licenci, uživatelskému rozhraní či dle osobních preferencí.