Firefox 22 con OdinMonkey per web app veloci come Bolt

In casa Mozilla stanno lavorando su OdinMonkey, un modulo per il compilatore JIT che permetterà a Firefox di avere prestazioni nettamente superiori con le web app. Un lavoro che potrebbe avere utili ripercussioni anche su Firefox OS.

Avatar di Manolo De Agostini

a cura di Manolo De Agostini

Mozilla sta lavorando su OdinMonkey, un nuovo modulo per il motore JavaScript di Firefox che promette di velocizzare ulteriormente l'esecuzione dei Javascript. Inserito nelle ultime build Nightly di Firefox potrebbe debuttare in Firefox 22, salvo ritardi. OdinMonkey ottimizza l'esecuzione di asm.js, estensione che prende il codice JavaScript, lo compila in linguaggio assembly nativo e lo esegue. OdinMonkey ottimizza ogni processo e il codice è eseguito con una rapidità "solo due volte inferiore" all'esecuzione nativa.

Anche se questo risultato può non sembrare particolarmente esaltante, tenete presente che il normale codice JavaScript è eseguito dalle 20 alle 30 volte più lentamente rispetto a quello nativo. A confronto, Chrome esegue codice asm.js circa 10 volte più lentamente rispetto alla velocità nativa, e Firefox (senza OdinMonkey) è circa 12 volte più lento. 

OdinMonkey è quindi una novità importante nel panorama dei browser, ma soprattutto ha un rilievo evidente nel mondo delle web app, che hanno un'esigenza: non farsi distinguere, quanto a rapidità, rispetto alle web app native. In breve OdinMonkey potrebbe dare vita un Adobe Photoshop o Crysis in forma web. Per quanto riguarda asm.js, si può vedere come un'alternativa al Native Client di Google, un modulo per eseguire codice nativo C e C++. 

Per interfacciarsi con OdinMonkey, gli sviluppatori possono usare C/C++ e compilare con Emscripten. Per quanto riguarda l'implementazione, mentre i primi passi sono stati fatti con le versioni Windows e Linux di Firefox, prossimamente il modulo sarà implementato anche sulla variante OS X e su Firefox Mobile. Scontato aspettarsi che in futuro questo lavoro rientri anche in Firefox OS, il sistema operativo mobile di Mozilla basato sugli standard del web.