Az Opera lesz a leggyorsabb böngésző?

Az Apple Safari windowsos változatának kiadása és a Google Chrome megjelenése kellemesen felpezsdítette a korábban gyakorlatilag állóháborúba merevedő böngészőpiacot. Nem azért, mert e programok látványosan átrendezték volna az erőviszonyokat (a Chrome részesedése nagyjából 1 százalék körüli szinten állt be), hanem mert termékeny rivalizálásra ösztönözték a fejlesztőket. Ma a piaci befolyáson túl két nagy területen folyik presztízsverseny a szereplők között: az egyik a webes szabványok követése – melynek benchmarkjáról nincs konszenzus a riválisok között –, a másik pedig a JavaScript-végrehajtási teljesítmény.

Látványosan távol maradt mindeddig e versengéstől az Operát fejlesztő norvég team. Ezt valószínűleg az indokolta, hogy a böngésző 9.5-ös verziójában bevezetett, az észak-európai rúnaírás skandináv neve nyomán Futharknak elnevezett JavaScript-interpreter a maga idejében a leggyorsabb volt a mezőnyben – csak akkor ez a versenyszám még nem szerepelt a böngészőolimpiákon. E motor fejlesztésekor az elsődleges szempont nem a sebesség, hanem a kód méretének és a memóriahasználatnak a minimalizálása volt. Azóta azonban a riválisok (a Firefox, valamint a WebKit-alapú Google Chrome és Apple Safari) belehúztak, és így az Opera a gyorsasági versenyben a sereghajtók közé szorult vissza.

Az Opera visszavág

Ám a norvég cég most elhatározta, hogy nemcsak ledolgozza a hátrányát, de ismét a leggyorsabb lesz. Amint Jens Lindström programozó a böngésző hivatalos blogjában bejelentette: néhány hónapja egy kisebb team dolgozik az új JavaScript/ECMAScript-motoron, amelyet a tradíciónak megfelelően ismét egy írásformáról, a jávai nyelv rögzítésére használt Carakanról neveztek el. Ebben több módon próbálják javítani a végrehajtás sebességét. Egyrészt az értékeket veremből olvasó bájtkód helyett regiszterekkel dolgozó bájtkódra térnek át, amivel csökkenthető a végrehajtandó utasítások száma. Másrészt egyes egyszerűbb ECMAScript-kódrészleteket és -függvényeket közvetlenül gépi kódba fordít majd a motor, harmadrészt pedig az objektumokat osztályokba sorolja, amivel a sok objektummal dolgozó kódok esetében jelentősen csökkenthető a memóriaigény.

S hogy mindez mennyivel gyorsítja a motort? Lindström szerint a Carakan korai fejlesztői változata – mely még nem tartalmazza a direkt gépi kódú fordítást – nagyjából két és félszer gyorsabb, mint az Opera 10 alfájában használt, továbbfejlesztett Futhark. A natív fordítás egyelőre nincs olyan stádiumban, hogy átfogóan, több platformon lehetne tesztelni, de az első mérések azt mutatják, hogy a gyorsulás ezzel legalább ötszörös, de kódtól függően akár ötvenszeres is lehet.

Azt, hogy a Carakan mikor készül el, egyelőre nem tudni, de valószínűleg később, mint a végleges Opera 10.

Azóta történt

Előzmények