Villámgyors lesz az új Firefox

A Mozilla közel két hónapja dolgozik egy olyan futásidejű fordító fejlesztésén, amely drámai mértékben képes felgyorsítani a Firefox JavaScript-futtatási sebességét. Az alkalmazott eljárás, a tracing és a böngésző interpretere nevének (SpiderMonkey) összevonásával TraceMonkey-nek keresztelt motort a múlt héten integrálták a program 3.1-es tesztváltozatának kódjába, igaz, egyelőre nem aktiválták. Az első szintetikus teszteredmények azt mutatják, hogy egyes benchmarkokban az új, még korai tesztfázisban lévő fordítóval is több tízszeres gyorsulás érhető el a Firefox 3.0-hoz képest.

Hirdetés

Amint az Ars Technica írásából kiderül, a Mozilla szakemberei – köztük a JavaScriptet megalkotó Brendan Eich, aki ma a vállalat műszaki igazgatója – úgy vélik, a programozási nyelvet kizárólag azért nem használják komplexebb webes alkalmazások fejlesztésére, mert a JavaScript-interpreterek gyenge teljesítményt nyújtanak, magyarán a programok végrehajtása túl lassú. Ezért a problémát a gyökerénél próbálják meg kezelni. A végrehajtás gyorsításához használt tracing elméletét a Kaliforniai Egyetem irvine-i campusán oktató Michael Franz és Andreas Gal dolgozta ki, utóbbi a TraceMonkey fejlesztésében is részt vesz.

A megoldás lényege, hogy a fordító a virtuális gép által végrehajtott bájtkódban gyakran teljesülő visszafelé mutató elágazásokat keresve azonosítja a ciklusokat, majd az interpreter által ott végrehajtott lineáris utasításszekvenciát fordítja le, így a következő előfordulásnál már a lefordított program hajtható végre. A tracing-optimalizáció különösen a dinamikus nyelvek esetében hatékony.

Az új motornak köszönhetően a felhasználók a JavaScript-végrehajtás látványos javulására számíthatnak a várhatóan az év végén vagy a jövő év elején megjelenő Firefox 3.1-ben. Például – látható a korai verzió képességeit bemutató demóból – a fényképek valós idejű manipulálása is megoldható lesz a böngészőben, élvezhető sebességgel.

A rivális Apple ugyancsak dolgozik a JavaScript-végrehajtás sebességének javításán. A vállalat júniusban számolt be arról, hogy új értelmezője, a SquirrelFish 1,6-szor jobb teljesítményt nyújt, mint a Safari 3.1-ben lévő amúgy is gyors interpreter. A Mozilla szerint viszont a TraceMonkey az új Apple-motort is kenterbe veri: már most is 2,5-szer gyorsabb annál.

Azóta történt

Előzmények