Firefox 9 ottiene un grande incremento delle prestazioni JavaScript

Buone notizie per tutti gli utenti di Firefox, specialmente quelli che utilizzano le ultime build Nightly di Firefox 9 o quelli che progettano di aggiornarle il proprio browser web alla nuova versione 9, una volta che diverrà disponibile anche negli altri canali Firefox di distribuzione.

Brian Hackett, uno sviluppatore Mozilla, ha lavorato per oltre un anno su una nuova funzionalità chiamata Type Inference. Forse saprete che è necessario definire dei tipi per le variabili in alcuni linguaggi di programmazione, mentre non è necessario farlo in altri. JavaScript, per esempio non richiede le definizioni di tipi per le variabili. Il rovescio della medaglia è che questa pratica può avere un impatto sulle prestazioni.

Type Inference si riferisce ad un algoritmo che deduce in automatico il tipo di un’espressione.

Proprio questa innovazione è  responsabile di un incremento delle prestazioni di JavaScript su Firefox davvero notevole. David Mandelin, sempre di Mozilla, ha notato miglioramenti delle prestazioni JavaScript fino al 44%.

“Sulla mia macchina, TI porta il punteggio Kraken da circa 4900 a circa 3400, un aumento di velocità di 1,44 volte. E su V8-v6, il punteggio passa da circa 5000 a circa 6600, un aumento di velocità del 1.3 punti percentuali”

Sebastian Anthony di Extreme Tech ha fatto qualche misurazione di propria iniziativa ed è giunto alla conclusione che i guadagni in termini di prestazioni dipendono in gran parte dal benchmark usato. Ha notato miglioramenti delle prestazioni tra il 15% al 30% su diversi benchmark con un processore Intel i7 930 con 6 gigabyte di RAM e una scheda video di Nvidia GTX 460 piuttosto veloce.

 “Con Firefox 9 e senza Type Inference, il benchmark Kraken richiede 3895 millisecondi; con Type Inference attivata occorrono solo 2763 millisecondi. Firefox 9, senza Type Inference, raggiunge un punteggio pari a 6075 sul benchmark V8 JavaScript; con Type Inference, il punteggio schizza fino a 6585. Anche su test banali come Sudoku HTML5 di Microsoft, la Type Inference migliora il tempo di risoluzione per 10.000 griglie da 2,6 a 1,62 secondi — e sì, il framerate FishBowl, a 2.000 fish, è aumentato del 15-20% con Type Inference abilitata.”

Gli utenti interessati possono scaricare l’ultima versione di Mozilla con Type Inference inclusa dal server ftp ufficiale di Mozilla. Il prossimo canale Firefox ad ottenere la Type Inference sarà Firefox Aurora, con una versione che sta per essere rilasciata il 27 settembreFirefox Beta otterrà la funzionalità solo l’8 novembre e il canale Stable dovrà attendere il 20 dicembre.