zurück zum Artikel

JavaScript-Performance in Firefox wesentlich verbessert

Jürgen Seeger

Durch den Einsatz des JavaScript-Subsets asm.js soll sich das Tempo von Browseranwendungen der von nativen Anwendungen nähern.

Schon Anfang des Jahres hatten Mozilla-Entwickler darauf hingewiesen, dass durch den Einsatz der abgespeckten JavaScript-Variante asm.js JavaScript-Anwendungen mittlerweile halb so schnell seien wie C++-Applikationen. Mit den neuesten Verbesserungen soll der Performance-Unterschied auf den Faktor 1,5 gesunken sein, wie auf Hacks.Mozilla.org mitgeteilt [1] wurde. Wesentlich dazu beigetragen hat, dass Fließkommaoperationen optimiert wurden, indem 32-Bit-Floating-Point- statt 64-Bit-Double-Werte genutzt werden; hinzu kommt, dass die eingesetzten Compiler verbessert wurden.

JavaScript in Firefox nähert sich der Performance von nativen C++-Programmen.

(Bild: HacksMozilla.org)

Die hohe Ablaufgeschwindigkeit von asm.js, Bestandteil aktueller Firefox-Versionen, wird möglich durch Ahead-of-Time-Kompilierung (AOT) und das dabei mögliche Optimieren. Die Vergleichswerte zu C++ beziehen sich auf die Umsetzung von C++-Programmen durch den Source-to-Source-Umsetzer Emscripten in JavaScript gegenüber C++-Kompilierung durch Clang oder GCC. Da die meisten Spiele in C++ programmiert sind, könnte durch diese Entwicklung Firefox in naher Zukunft als Ablaufplattform für Spiele eingesetzt werden. Asm.js läuft zwar im Prinzip in allen JavaScript-fähigen Browsern – aber nicht so schnell wie im dafür optimierten Firefox. (js [2])


URL dieses Artikels:
https://www.heise.de/-2072071

Links in diesem Artikel:
[1] https://hacks.mozilla.org/2013/12/gap-between-asm-js-and-native-performance-gets-even-narrower-with-float32-optimizations/
[2] mailto:js@ix.de