Wydajność nowego silnika JavaScript w WebKit, do Firefox 3.0 RC

07.06.2008
Wydajność nowego silnika JavaScript w WebKit, do Firefox 3.0 RC

Kilka dni temu przeczytałem na blogu twórców WebKita o zupełnie nowym silniku JavaScript – SquirrelFish jaki został zaimplementowany w najnowszych buildach. Programiści projektu zdecydowali się wykorzystać zupełnie inny sposób na organizację działania silnika. Pomysły czerpali z kilku opracowań:
The Structure and Performance of Efficient Interpreters (Introduces the fundamentals of virtual machine design and explains the importance of direct threading)
Virtual Machine Showdown: Stack Versus Registers (Details the benefits of register machines, and the importance of copy propagation)
The Implementation of Lua 5.0 (Outlines the implementation of a real-world register-based bytecode engine, with a sliding register window calling convention)
Mimo tego, że zaimplementowano na razie tylko część kodu, to już tym momencie SquirrelFish jest dużo szybszy niż poprzedni silnik WebKita. Oto dowód z bloga Surfin’ Safari.


Jednak nie wierząc zbytnio programistom:) postanowiłem sam przetestować wydajność nowego silnika JavaScript i przy okazji porównać go z tym jaki pracuje w najnowszym Firefox 3.0 RC2. Wyniki moich prac można znaleźć w udostępnionym w serwisie Google Dokumenty arkuszu, a poniżej prezentuje wersję okrojoną (średnią).

Testy/Przeglądarki
ACID3 [%]
Dojo 1.0.2 [ms]
JQuery 1.2.3 [ms]
MooTools 1.2beta2 [ms]
Prototype 1.6.0.2 [ms]
JavaScript Performance Test [ms]
SunSpider Test [ms]
CSS3 Info selectors-test [%]
Firefox
71.38
208.13
407.38
195.38
335
365.75
7627.58
87.79
Safari
91.67
54.5
136.5
266
329.5
393.5
7035.67
100

[ms] – im mniej tym lepiej
[%] – im więcej tym lepiej

Wynika z niej jasno, że WebKit jest szybszy niż którykolwiek obecnie najnowszy silnik. Na koniec jeszcze kilka przydatnych linków:
SunSpider: Safari 3.1 vs SquirrelFish
SunSpider: Safari 3.0 vs SquirrelFish
SquirrelFish vs Firefox interpreter

Advertisement

Dołącz do dyskusji

Advertisement
Advertisement