« Kestrel has landed!

ActionMonkey killed in favour of TraceMonkey »

September 2nd, 2008 Written by liorean

Scripting engines just got a whole lot faster

I’m sure you all know it by now, but Google released their own WebKit based browser, Google Chrome. It’s an interesting browser to me in particular because it’s got a new scripting engine, the Google V8 JavaScript Engine. From a quick look at the descriptions of it, this isn’t your run-of-the-mill JavaScript bytecode interpreted engine, it sure isn’t a naïve AST interpreted engine either, this engine actually compiles JavaScript into machine code. I was interested in running SunSpider on all the recent JavaScript engines that’s popped up, Opera’s futhark, Apple’s SquirrelFish, Mozilla’s TraceMonkey, Google’s V8, and Microsoft’s improvements to their JScript engine. Note that Mozilla has a bug in TraceMonkey, Mozilla Bug #451 942 that makes the TraceMonkey JIT not work on one of the subtests in SunSpider. Bug fixed just a few hours ago! I’ve also got a test of Mozilla SpiderMonkey in here for comparison to TraceMonkey.

JScript Microsoft Internet Explorer 8 beta 2
11421.6ms
Futhark Opera 9.60 (Kestrel 10408)
7103.8ms
ActionMonkey Mozilla Firefox 3.1a1pre Minefield 2008090218
6701.2ms
JavaScriptCore Apple Safari 3.1.2
5651.2ms
SpiderMonkey Mozilla Firefox 3.1a2pre Minefield 20080826034105 No-JIT
4262.0ms
SquirrelFish Safari WebKit-r35928
3454.0ms
V8 Google Chrome 0.2.149.27 (Official Build 1583)
2474.2ms
TraceMonkey Mozilla Firefox 3.1b1pre Minefield 20080902174430 JIT
2064.4ms

This on the same hardware and Windows install as the SunSpider 0.9 ECMAScript benchmark results from just before Christmas last year, where IE7 takes all of 55609.2ms to get through the test, Ff2 takes 25343.2ms, and Opera 9.24 (Merlin 8732) takes 21327.2ms and Safari 3.0.4 takes 14479.8ms. Going from 55609.2ms on IE7 to 2064.4ms in Ff3.1 with TraceMonkey, that’s a whooping 27 times faster. It will be really interesting seeing the responses from Opera and Microsoft to these recent extraordinarily fast scripting engines.

Posted in Javascript |

You can follow any responses to this entry through the RSS 2.0 feed. You can skip to the end and leave a response. Pinging is currently not allowed.


4 Responses to “Scripting engines just got a whole lot faster”

  1. Jeff Says:
    September 2nd, 2008 at 6:19 pm

    I found a few other benchmark suites too and I must say, I’m pretty much sold on the performance boost V8 delivers. Very impressive. Especially the 4x speed boost against FF3 in Mozilla’s own test :)

    http://jrm.cc/articles/717-google-chrome-javascript-benchmarks

  2. Brendan Eich Says:
    September 2nd, 2008 at 9:49 pm

    The bug afflicting date-format-tofte.js has been fixed. See

    http://bugzilla.mozilla.org/show_bug.cgi?id=453361

    TraceMonkey is still evolving; we still do not complete trace recordings in common benchmarks due to unfinished work, which we are busy pursuing all the time. It’s silly at this stage (9 or so weeks) to count it as “done”. V8 has obviously been in the works a while, and it’s a good piece of engineering. But the race goes on.

    /be

  3. liorean Says:
    September 2nd, 2008 at 9:57 pm

    Brendan: Is this fix in a nightly/hourly build that I could test yet?

    (Edit: Oh, just found an hourly with the bug fixed and ran it through the benchmark. Very nice results, I must say!)

  4. app Says:
    September 15th, 2008 at 12:17 pm

    I can’t wait till TraceMonkey is ready for prime time and makes its way into the official version of K-Meleon.

    Us owners of old slow PC’s could really use that speed boost, and currently K-Meleon is the only browser many of us can run.

    The current trend on the internet to overscript pages is killing a lot of us. Hopefully TraceMonkey will fix that and allow us to use sites we currently can’t.

Leave a Reply