Wednesday, June 4th, 2008

SquirrelFish: Technical excitement

Category: JavaScript, WebKit

Watching people discuss SquirrelFish has been a real pleasure. The WebKit team set the tone with their initial technical detail. Instead of a post saying “We have a fast JSVM now. woohoo!”, they told us why it is faster, and what they can work on from here.

The community is continuing the conversation. David Mandelin of Mozilla, who has been doing a great job discussing Tamarin internals, shared his look at SquirrelFish and the improvements: Using a bytecode interpreter, Using direct-threaded interpreter dispatch, Using a register-based bytecode interpreter.

David built microbenchmarks to test out the direct-threaded dispatch and register-based interpreter. I bet Parrot and Dalvik folk are looking at this too (register based).

Take a peak at the bytecodes.

Also, Charles Ying looked at how SquirrelFish is faster than Tamarin, and Mason Chang did the same, comparing SquirrelFish and SpiderMonkey.

Posted by Dion Almaer at 7:27 am

4.3 rating from 26 votes


Comments feed TrackBack URI

I’ve been seeing some interesting results with performance test pages that I use to explore various alternative techniques when implementing features for The UIZE Framework and the Zazzle Web site. Consistently, the test pages are reporting substantially lower time durations in Safari for Windows than FF or IE. My jaw drops. I assume that there’s something wrong with my test harness logic. Or is there something amiss with Safari’s Date mechanism that is used to time the operations? Or perhaps Safari’s JS interpreter now really is *that* much faster than the rest.
Must do some more digging…

Comment by uize — June 4, 2008

There’s no question. I have not been doing tests, but the heavy js web-app I am developing right now is substantially faster and more responsive in Safari on winxp than either ff or ie. It’s not subtle.

Comment by spherop — June 4, 2008

Personally, at least, any noticeable speed difference between Opera 9.27, Safari 3, and Firefox 3 is negligible, at least in my tests. It would be interesting to see different aspects of Javascript programming: Traditional loops, variable creation/deletion, use of XMLHttpRequest, and DOM node creation, and their applicable speeds on the latest browsers.

Comment by matanlurey — June 5, 2008

I have been doing tests with benchmark sites I located and I found that quite a few tests on XP returned either 0 ms or 16 ms. I checked with the Webkit blog and they indicated that XP often could not time events shorter than 16 ms.

I thought some of the tests weren’t running, but I can’t find any evidence that they’re actually failing.

Comment by MCroft — June 6, 2008

Very intresting peice
will be very useful in our herbal bussiness

Comment by Tribulus — September 17, 2008

Leave a comment

You must be logged in to post a comment.