asm.js: Epic Citadel läuft auch in Chrome und Opera

Die von Mozilla und Epic veröffentlichte HTML5-Demo Epik Citadel läuft nun offiziell auch in Chrome und Opera, die für asm.js geschriebenen Code dank diverser Optimierungen schneller ausführen.

Artikel veröffentlicht am ,
Epic Citadel läuft nun auch in Chrome und Opera
Epic Citadel läuft nun auch in Chrome und Opera (Bild: Epic Games)

Mozilla hat zusammen mit dem Spielehersteller die Unreal Engine in HTML5 umgesetzt und im Mai 2013 die Demo Epic Citadel veröffentlicht, um zu zeigen, wozu die von Mozilla entwickelte Javascript-Erweiterung asm.js imstande ist. Ab sofort unterstützt Epic Citadel neben Firefox zwei weitere Browser: Chrome ab der Version 31 und Opera ab der Version 18. Zwar unterstützen die beiden Browser asm.js offiziell nicht, sind aber dank einiger Optimierungen in der Lage, entsprechenden Code schneller auszuführen als noch vor wenigen Monaten.

Laut Mozilla läuft Epic Citadel in Firefox, der asm.js direkt unterstützt, noch etwas schneller als in den beiden auf Blink und V8 basierenden Browsern. Die beiden anderen Browser hätten aber aufgeschlossen, heißt es in einem Blogeintrag.

Bei asm.js handelt es sich um eine Javascript-Erweiterung, mit der bestimmte Javascript-Programme zwei- bis fünfmal so schnell ausgeführt werden können wie bisher.

Konkret handelt es sich bei asm.js um ein Javascript-Subset, so dass sich für asm.js geschriebener Code in jeder Javascript-Engine ausführen lässt. Javascript-Engines, die auf asm.js aber vorbereitet sind, wie die von Firefox, Chrome und Opera, können den Code deutlich schneller ausführen. Unterm Strich sollen asm.js-Programme etwa halb so schnell sein wie nativer Code, der in C/C++ geschrieben wurde. Damit erreicht Javascript mit asm.js in etwa die Geschwindigkeit von Java und C#.

Um diesen Geschwindigkeitssprung zu erreichen, führt asm.js strikte Typen für Integer und Floats sowie einen virtuellen Heap ein, der durch ein Typed Array repräsentiert wird. Integer-Variablen werden nach dem aktuellen Entwurf mit dem Anhang "|0" versehen, Floats wird ein "+" vorangestellt. Die Einhaltung der strikten Typen kann beim Parsen des Javascript-Codes überprüft werden, vorausgesetzt, die Javascript-Engine wird mit "use asm"; dazu angewiesen.

Da sich die Typen während der Laufzeit nicht verändern, kann für den entsprechenden Code ein Ahead-of-Time-Compiler verwendet werden. Auch eine Garbage-Collection ist nicht mehr notwendig, was letztendlich dafür sorgt, dass der Javascript-Code deutlich schneller ausgeführt werden kann. Gedacht ist asm.js vor allem für automatisch aus anderen Sprachen erzeugten Javascript-Code, beispielsweise C-Code, der per Emscripten in Javascript übersetzt wird. Nachtrag vom 17. November 2013, 10:10 Uhr:

In der Meldung hieß es ursprünglich, Chrome 31 und Opera 18 unterstützten asm.js. Das ist nicht korrekt. Die beiden Browser sind aber dank diverser Optimierungen in der Lage, entsprechenden Code deutlich schneller auszuführen. Offizielle Unterstützung für asm.js bieten Chrome und Opera nicht. Das wurde im Artikel entsprechend korrigiert.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Blizzard
Preise im Itemshop von Diablo 4 entfachen Empörung

Die Community reagiert sauer auf Leaks über die Preise im Itemshop von Diablo 4. Ein Rüstungsset kostet fast so viel wie früher ein Add-on.

Blizzard: Preise im Itemshop von Diablo 4 entfachen Empörung
Artikel
  1. Schufa-Score: Hohes Bußgeld wegen Kreditkartenablehnung ohne Begründung
    Schufa-Score
    Hohes Bußgeld wegen Kreditkartenablehnung ohne Begründung

    Die DKB hat einen Kreditkartenantrag nur gestützt auf Algorithmen und den Schufa-Score abgelehnt und dies auch nicht begründet. Das kostet 300.000 Euro Bußgeld.

  2. Glasfaser: Netcologne unterscheidet nicht zwischen FTTH und FTTB
    Glasfaser
    Netcologne unterscheidet nicht zwischen FTTH und FTTB

    Telekom und Vodafone überbauen das Netz von Netcologne in Köln. Doch was für ein Netz hat Netcologne?

  3. Generative Fill: Wie Adobes KI-Funktionen das Internet spalten
    Generative Fill
    Wie Adobes KI-Funktionen das Internet spalten

    Die KI-Füllfunktion in Photoshop erfindet Hintergründe zu Gemälden oder Album-Covern. Einige finden das kreativ, andere sehen die Kunst bedroht.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    • Daily Deals • Gigabyte RTX 3060 Ti 369€ • Kingston Fury SSD 2TB (PS5-komp.) 129,91€ • Sony Deals Week • MindStar: Corsair Crystal RGB Midi Tower 119€, Palit RTX 4070 659€ • Roccat bis -50% • AVM Modems & Repeater bis -36% • Logitech G Pro Wireless Maus 89€ • The A500 Mini 74,99€ [Werbung]
    •  /