2min

Afgelopen donderdag introduceerde het Apple WebKit-team een nieuwe engine voor de verwerking van JavaScript, SquirrelFish Extreme genaamd. Deze is de opvolger van het in juni geïntroduceerde SquirrelFish.

WebKit claimt dat SquirrelFish Extreme, kortweg SFX, bijna twee keer zo snel is als SquirrelFish en tien keer sneller dan de JavaScript-engine van Safari 3.0, minder dan een jaar terug. "SquirrelFish Extreme gebruikt gevanceerdere technieken zoals snel genereren van code om nog meer JavaScript performance te kunnen leveren", aldus WebKit.

Op het gebied van performance beconcurreren de verschillende browsermakers elkaar sterk. Nadat het WebKit-team in juni SquirrelFish introduceerde kwam Mozilla vrij snel daarna met Mozilla TraceMonkey en onlangs onthulde Google zijn eigen V8 als ‘supersnelle’ JavaScript-engine in de nieuwe browser Chrome.

Benchmark van SquirrelFish Extreme ten opzichte van WebKit 3.1 en WebKit 3.0.

De noodzaak om JavaScript te versnellen komt voort uit het ontstaan van nieuwe verfijnde webapplicaties zoals Apple’s eigen MobileMe webapplicaties die de ‘look and feel’ van de bekende desktopapplicaties proberen te imiteren. Hiervoor introduceerde Apple al een eigen raamwerk, het SproutCoreJavaScript framework.

De verbeteringen in SquirrelFish Extreme bestaan volgens de ontwikkelaars uit: "bytecode optimaliseringen, polymorfische inline caching, een lichtgewicht ‘context threaded’ JIT compiler en een nieuwe ‘regular expression engine’ that uses our JIT infrastructure." Dit is een behoorlijk technisch verhaal, dat door de ontwikkelaars op hun weblog nader wordt uitgelegd.

"We zijn blij met deze verbetering, maar we denken ook dat er nog meer performance op komst is." Het team blijft werken om de performance van SFX nog verder te verbeteren.

Het nieuwe SFX, ondersteuning voor HTML5 en allerlei andere verbeteringen moeten uiteindelijk hun weg gaan vinden in de nieuwe versie van Safari, Safari 4.0 die redelijkerwijs met de komst van Mac OS X Snow Leopard verwacht kan worden. In de tussentijd stelt het WebKit-team wel ‘nightlies’ beschikbaar om de nieuwe engine zelf aan tests te onderwerpen.