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

JIT-Compiler: Ionmonkey soll Firefox 18 beschleunigen

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

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

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.

Anzeige

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.


eye home zur Startseite
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...



Anzeige

Stellenmarkt
  1. medavis GmbH, Karlsruhe
  2. Daimler AG, Sindelfingen
  3. Fraunhofer-Institut für Optronik, Systemtechnik und Bildauswertung IOSB, Karlsruhe
  4. Wüstenrot & Württembergische Informatik GmbH, Ludwigsburg


Anzeige
Hardware-Angebote
  1. (u. a. Ryzen 5 1400 für 151,99€, Ryzen 5 1600 für 198,95€ und Ryzen 7 1700 für 292,99€)
  2. ab 649,90€

Folgen Sie uns
       


  1. Gesetz gegen Hasskommentare

    Facebook spielt in eigener Bußgeld-Liga

  2. GPD Pocket im Test

    Winziger Laptop für Wenigtipper

  3. Neue WLAN-Treiber

    Intel muss WLAN und AMT-Management gegen Krack patchen

  4. Kabel-Radio

    Sachsen will auch schnelle UKW-Abschaltung im Kabel

  5. To Be Honest

    Facebook kauft Wahrheits-App

  6. Lüfter

    Noctua kann auch in Schwarz

  7. Microsoft

    Supreme Court entscheidet über die Zukunft der Cloud

  8. Windows 10

    Microsoft zeigt Fluent Design im Detailvideo

  9. Bungie

    Letzte Infos vor dem Start der PC-Fassung von Destiny 2

  10. Ubiquiti Amplifi und Unifi

    Erster Consumer-WLAN-Router wird gegen Krack gepatcht



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Elektromobilität: Niederlande beschließen Aus für Verbrennungsautos
Elektromobilität
Niederlande beschließen Aus für Verbrennungsautos
  1. World Solar Challenge Regen in Australien verdirbt Solarrennern den Spaß
  2. Ab 2030 EU-Komission will Elektroauto-Quote
  3. Mit ZF und Nvidia Deutsche Post entwickelt autonome Streetscooter

Cybercrime: Neun Jahre Jagd auf Bayrob
Cybercrime
Neun Jahre Jagd auf Bayrob
  1. Antivirus Symantec will keine Code-Reviews durch Regierungen mehr
  2. Verschlüsselung Google schmeißt Symantec aus Chrome raus
  3. Übernahme Digicert kauft Zertifikatssparte von Symantec

Verschlüsselung: Niemand hat die Absicht, TLS zu knacken
Verschlüsselung
Niemand hat die Absicht, TLS zu knacken
  1. TLS-Zertifikate Zertifizierungsstellen müssen CAA-Records prüfen
  2. Apache-Lizenz 2.0 OpenSSL-Lizenzwechsel führt zu Code-Entfernungen
  3. Certificate Transparency Webanwendungen hacken, bevor sie installiert sind

  1. Re: Bin gespannt auf Ryzen+Vega

    ms (Golem.de) | 13:28

  2. Re: Meine Frau ist genervt...

    Toms | 13:27

  3. Re: Besinnungslos

    MattheusErb | 13:27

  4. Re: Warum mischt man den Kohlenstoff nicht

    Dwalinn | 13:27

  5. Re: 150 cd/m2??? really?

    renegade334 | 13:27


  1. 13:15

  2. 11:59

  3. 11:54

  4. 11:50

  5. 11:41

  6. 11:10

  7. 10:42

  8. 10:39


  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