Mozilla borrows from WebKit to build fast new JS engine

Mozilla’s high-performance TraceMonkey JavaScript engine, which was first introduced in 2008, has lost a lot of its luster as competing browser vendors have stepped up their game to deliver superior performance. Firefox now lags behind Safari, Chrome, and Opera in common JavaScript benchmarks. In an effort to bring Firefox back to the front of the pack, Mozilla is building a new JavaScript engine called JägerMonkey.

The secret sauce that will drive Mozilla’s new JavaScript engine engine into the fast lane is some code borrowed from Apple’s WebKit project. Mozilla intends to bring together the powerful optimization techniques of TraceMonkey and the extremely efficient native code generator of Apple’s JSCore engine. The mashup will likely deliver a significant boost in Firefox’s JavaScript execution speed, making Mozilla’s browser a formidable contender in the ongoing JavaScript speed race.

Mozilla’s current JavaScript engine uses nanojit as its native code generator. Adobe originally developed nanojit to power Flash’s ActionScript execution and released it under an open source software license in 2006. Mozilla and Adobe were going to use nanojit to build an ECMAScript 4 implementation called Tamarin, but the project was largely abandoned when ECMAScript 4 was shelved. Mozilla integrated nanojit into its existing SpiderMonkey engine and added tracing optimization to build TraceMonkey.

Mozilla’s new JägerMonkey engine will continue to use nanojit for some things, but will rely on Apple’s Nitro Assembler to generate efficient native code. This will allow JägerMonkey to benefit from the performance advantages of method-based just-in-time (JIT) compilation. JägerMonkey will also use tracing optimization to flatten out loops and speed up other kinds of execution paths that can benefit from further optimization. Mozilla says that this blend of technologies potentially offers the best of all worlds.

“The reason we’re [building JägerMonkey] is that TraceMonkey is very fast for code that traces well, but for code that doesn’t trace, we’re stuck with the interpreter, which is not fast. The JägerMonkey method JIT will provide a much better performance baseline, and tracing will continue to speed us up on code where it applies,” wrote developer David Mandelin a blog entry about the new engine.

The project is said to be at a relatively early stage of development and is not yet ready to be broadly demonstrated. Developers who want to have a look at the code can download it from Mozilla’s version control repository. The current development status is described in a page at the Mozilla wiki.

Ubuntu 10.04 Live CD Installer gets improved

The Ubuntu 10.04 Live CD has ditched the boring ‘black on white text’ menu approach and instead delivers up a GUI menu. Whilst we’re still 2 months away from the final installer design, here’s a quick peek at it as it currently exists: –

So you’ve download and burnt your Ubuntu 10.04 Live CD, you pop it into your disc tray and whirr up.

The first screen is a blink and you miss it affair.

Screenshot-Ubuntu Testing [Running] - VirtualBox OSE

Still using the old logo, the screen essentially tries to convey “hit a button to see other options”. Doing so will take you to the, by now, familiar menu screen where you can select options such as OEM install, memory test, disc check, etc.

Screenshot-Ubuntu Testing [Running] - VirtualBox OSE-1

The new look menu

But what happens if you don’t press a key during the fleeting all-but-a-second the first screen show for? Lo and behold you see the gorgeous new Ubuntu Plymouth boot screen whizzing by your eyes before fading into this menu: –


This screen replaces the text menu of old and you’ll now notice that languages are now presented on the left-hand side rather than in a pop-up selection screen. (See below)

Old Look: –


‘Clicking the ‘Try Ubuntu 10.04’ buttons takes you straight to the Live CD desktop so you can fool around with the latest and greatest OS.


Clicking on ‘Install Ubuntu 10.04’ does, not surprisingly, initialize the installation walkthrough.

The set-up steps haven’t changed dramatically so far, you’re still presented with pretty much the same screens as in the Alpha bar a few tweaks here and there: –

image image

image image

Screenshot-Ubuntu Testing [Running] - VirtualBox OSE-9 Screenshot-Ubuntu Testing [Running] - VirtualBox OSE-10

Some screenshots very kindly provided by NCLI

Posted in System. Tags: , , . 1 Comment »
%d bloggers like this: