Anzeige
Ionmonkey macht Firefox schneller.
Ionmonkey macht Firefox schneller. (Bild: David Anderson)

JIT-Compiler Ionmonkey soll Firefox 18 beschleunigen

Mozilla hat seinen neuen Javascript-JIT-Compiler Ionmonkey in der aktuellen Entwicklerversion von Firefox 18 aktiviert. Ionmonkey soll Firefox deutlich schneller machen.

Anzeige

Mozillas Javascript-Engine Spidermonkey bekommt einen neuen JIT-Compiler, der den aktuellen Jägermonkey ergänzt. Während Jägermonkey ebenso wie die Tracing-Engine Tracemonkey Javascript direkt in Maschinencode übersetzt, arbeitet Ionmonkey in drei Schritten: Zunächst wird der Javascript-Code in eine Zwischendarstellung (Intermediate Representation, IR) gebracht, und anschließend werden auf dieser IR verschiedene Algorithmen zur Optimierung angewandt. Erst dann wird die IR in Maschinencode übersetzt.

Diese neue Architektur ermöglicht es Ionmonkey, den erzeugten Code zu analysieren und zu optimieren. Zudem soll der Ansatz künftige Verbesserungen der Javascript-Engine vereinfachen, denn neue Ideen können in Form von Plugins geschrieben und so leicht in die Optimierung integriert werden, um ihre realen Auswirkungen zu testen.

Von Ionmonkey profitieren vor allem lange laufende Javascript-Applikationen, da hier die Optimierungen mit der Zeit greifen. Für kurz laufende Programme wird weiterhin Jägermonkey verwendet. In einem von Mozilla-Entwickler David Anderson veröffentlichten Benchmark, durchgeführt auf einem Mac Pro mit Windows 7 Professional, ist die neue Javascript-Engine deutlich schneller. Braucht Firefox 17 für Mozillas Benchmark Kraken noch 2.602 ms, schafft Firefox 18 den Durchlauf in 1.921 ms. Firefox 18 ist also rund 26 Prozent schneller als sein Vorgänger.

In Googles Javascript-Benchmark V8 ist Firefox 18 rund 7 Prozent schneller als sein Vorgänger und 20 Prozent schneller als die aktuelle Version Firefox 15.

Für die höhere Geschwindigkeit sorgen dabei verschieden Optimierungen, darunter "Loop-Invariant Code Motion" (LICM), die, wenn möglich, Instruktionen aus Schleifen herauslöst, Sparse Global Value Numbering (GVN), um redundanten Code zu eliminieren, Linear Scan Register Allocation (LSRA), die Register-Allokation, die in der Hotspot JVM zum Einsatz kommt, Dead Code Elimination (DCE), die nicht genutzte Instruktionen entfernt, sowie Range-Analysen.

Die Compiler-Architektur ist weitgehend abstrakt angelegt, so dass sie mit geringem Aufwand auf andere Plattformen portiert werden kann. So sind große Teile des Compilers für x86, x86-64 und ARM identisch.

Die Entwicklung von Ionmonkey ist damit aber keineswegs abgeschlossen: Die Mozilla-Entwickler wollen sich in den nächsten Monaten darauf konzentrieren, die neue Javascript-Engine mit Hilfe von Benchmarks und echten Applikationen zu optimieren.

Ionmonkey ist in den aktuellen Nightly Builds der Desktopversion von Firefox 18 aktiviert. In Kürze soll der JIT-Compiler auch im Entwicklungszweig der mobilen Firefox-Version aktiviert werden. Bis Firefox 18 mit Ionmonkey erscheinen wird, dauert es aber noch eine Weile: Erst am 8. Oktober soll Firefox 18 in den Aurora-Channel wechseln, am 20. November dann in den Betakanal.


zZz 13. Sep 2012

Quelle: http://whyeye.org/blog/firefox-performance-history/ Bedeutung: Da hätte ich...

Tapsi 12. Sep 2012

Das Vergleiche ich echt ungern, da allein schon durch die Konstruktion der Sprache...

Kommentieren



Anzeige

  1. IT-Servicemitarbeiterin/IT-S- ervicemitarbeiter
    Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V., München
  2. SAP-Administration (m/w) Finanzbuchhaltung
    Centrale Medien Dienste GmbH, Chemnitz
  3. Internationaler Datenschutzbeauftragter (m/w)
    PAUL HARTMANN AG, Heidenheim
  4. Softwareentwickler/in für Fahrerbeobachtungskameras
    Robert Bosch GmbH, Leonberg

Detailsuche


Spiele-Angebote
  1. NEU: Far Cry Primal (uPlay-Key)
    31,19€
  2. Dragon Age: Inquisition PC
    9,99€ (+ 2,99€ Versand ohne Prime)
  3. VORBESTELLBAR: The Heavy Rain and Beyond:Two Souls Collection - [PlayStation 4]
    54,99€ - Release 2. März

Weitere Angebote


Folgen Sie uns
       


  1. Marshmallow und Lollipop

    HTC, Samsung und Sony verteilen Android-Updates

  2. VBB-Fahrcard

    Der Fehler steckt im System

  3. Gnome

    Dateimanager Nautilus wird runderneuert

  4. Medizintechnik

    Minisender überträgt Daten aus dem Körper

  5. Abomodell

    Wired sperrt Nutzer von Adblockern aus

  6. Indoor-Antennen

    Vodafone verbessert Mobilfunknetz in Einkaufszentren

  7. Lumberyard

    Amazon veröffentlicht Engine auf Basis der Cryengine

  8. 29.000 Datensätze veröffentlicht

    Persönliche Daten zahlreicher US-Agenten im Netz

  9. Container

    Docker wechselt Image-Basis von Ubuntu zu Alpine Linux

  10. Dice

    Höhere Tickraten für Battlefield 4



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Time Lab: Großes Kino
Time Lab
Großes Kino
  1. Forscher des IIS Sensoren am Körper bald ganz selbstverständlich
  2. Arbeitsschutz Deutscher Roboter schlägt absichtlich Menschen

Lockdown befürchtet: Die EU verbietet freie Router-Software - oder doch nicht?
Lockdown befürchtet
Die EU verbietet freie Router-Software - oder doch nicht?
  1. Die Woche im Video Mensch verliert gegen Maschine und iPhone verliert Wachstum
  2. WLAN-Störerhaftung Freifunker machen gegen Vorschaltseite mobil
  3. Störerhaftung bei WLAN SPD-Abgeordnete wollen Gesetzentwurf grundlegend ändern

Time Machine VR angespielt: Wir tauchen mit den Monstern der Tiefe
Time Machine VR angespielt
Wir tauchen mit den Monstern der Tiefe
  1. Unreal Engine4 Epic baut virtuelle Welt in virtueller Welt
  2. Unmandelboxing Markus Persson fliegt durch VR-Fraktaltunnel
  3. Spectrevision Elijah Wood macht Horror-VR mit Ubisoft

  1. Re: Wozu?

    RLYFGT | 12:42

  2. Re: Hat schon jemand untersucht, ob andere...

    as (Golem.de) | 12:42

  3. Re: Würstchenmanagement...

    Spaghetticode | 12:41

  4. Re: Voschlag Do-Not-Block Header

    tezmanian | 12:40

  5. Re: Adblocker

    nicoledos | 12:40


  1. 12:19

  2. 12:04

  3. 12:01

  4. 11:51

  5. 11:43

  6. 11:31

  7. 11:25

  8. 10:57


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel