Microsoft Edge und Chakra mit asm.js-Support
Kommentare

Microsoft hat sich ein Herz gefasst und auf seine Community gehört; denn die forderte mit großer Mehrheit den Support für asm.js im Browser der Redmonder. Genau dieser Support wurde nun in Chakra und Microsoft Edge integriert.

Damit rückt Microsoft nun endlich wieder zur Konkurrenz auf – Mozillas Firefox, Apples Safari, Googles Chrome und sogar Opera bieten das nämlich schon längst; einzig im Internet Explorer lies vor allem die Performance bisher sehr zu wünschen übrig.

asm.js in Chakra und Edge

Wie das Microsoft-Edge-Team in seinem Blogpost Bringing Asm.js to Chakra and Microsoft Edge stolz verkündet, war der asm.js-Support eines der meist gewünschten Features der Community, seitdem man im Dezember 2015 die Microsoft Edge Developer Suggestion Box eröffnet hatte.

Since that time, we’ve made good progress, and in Windows 10 Insider Preview builds starting with 10074, we are now previewing the early work that we’ve been doing to enable Asm.js support in Chakra and Microsoft Edge.

asm.js ist ein Subset von JavaScript, dessen Aufgabe es ist, High-Performance-Anwendungen in den Browser zu holen. Durch den Verzicht auf Dynamic Type Guards, Garbage Collection und Boxed Values nähert es sich vor allem performancemäßig den Sprachen C und C++ an; gerade in letzter Zeit hatte das asm.js-Team deutliche Fortschritte in diesem Bereich verzeichnen können.

asm.js als Teil von Chakras Execution Pipeline

Auch Microsoft möchte nun von den Möglichkeiten, die asm.js bietet, profitieren. Eigens dazu hat das Chakra-Team die Execution Pipeline entsprechend modifiziert – somit entfallen auch die lästigen Performance-Probleme, mit denen der Internet Explorer bisher zu kämpfen hatte.

Abb.: Chakka – Chakra auf Speed durch Modifikationen der Execution Pipeline

Abb.: Chakka – Chakra auf Speed durch Modifikationen der Execution Pipeline

Quelle

Zu den Modifikationen zählen unter anderem das Hinzufügen eines asm.js-Validators sowie das Entfernen diverser Bailouts aus dem kompilierten asm.js-Code.

Hinzu kommen jedoch auch die bereits im Oktober vorgestellten Optimierungen des JIT-Compilers in Chakra, die vollständig der asm.js-Spezifikation folgen und damit sehr nahe an der nativen Codeperformance liegen sollen.

Wer sich intensiver mit dem Thema asm.js beschäftigen möchte, dem sei der Artikel JavaScript als Plattform von Jakob Westhoff ans Herz gelegt.

Edge mit Turbolader erfreut das Gamerherz

Vor allem Spieler dürften diese Nachrichten hocherfreut zur Kenntnis nehmen. Zwei der wichtigsten Spieleengines – die Unreal Engine sowie Unity – nutzen asm.js, um im Web direkt aus den Tools heraus vor allem grafisch aufwändige Spiele präsentieren zu können.

Dennoch gibt man sich im Edge-Team zunächst nur verhalten enthusiastisch:

However we are not fully done yet. We are working on fine tuning Chakra’s pipeline for ASM.js support – gathering data to validate if the current design approach performs well for real world asm.js payloads, understanding and addressing outstanding performance, functionality and tooling issues etc. before enabling this feature by default.

Wer jetzt schon mit asm.js in Microsoft Edge experimentieren möchte, sollte darin zu about:flags navigieren und asm.js aktivieren.

Sollten die finalen Schritte allerdings erledigt sein, steht Windows-Nutzern eine rosige Zukunft bevor: asm.js soll nämlich nicht nur in Microsoft Edge integriert werden. Sowohl Windows-Store-Apps die in JavaScript geschrieben wurden als auch die Web Views sollten künftig in der Rendering Engine darauf zurückgreifen können.

Ein durchaus spannender Ausblick in Microsofts JavaScript-Performance-Zukunft.

Aufmacherbild: Chrome car turbine von Shutterstock / Urheberrecht: You can more

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -