Anzeige

Firefox 3.1: TraceMonkey beschleunigt Javascript erheblich

TraceMonkey macht einzelne Javascript-Funktionen 20 mal schneller

Die Optimierungstechnik TraceMonkey soll die Ausführung von Javascript in Firefox drastisch beschleunigen und wird in der kommenden Version des Browsers enthalten sein. In einzelnen Teilbereichen wird JavaScript damit 20- bis 40-mal schneller.

Anzeige

Javascript ist längst viel mehr als eine Spielerei um Knöpfe auf Websites einzufärben oder Formulareingaben zu prüfen. Auf der einen Seite nimmt sich die ECMA historisch gewachsenen Unzulänglichkeiten von Javascript an, auf der anderen Seite werden die Implementierungen besser und deutlich schneller, so dass sich ganz neue Dinge mit Javascript realisieren lassen.

In die letztgenannte Kategorie fällt auch TraceMonkey, ein trace-basierter JIT-Compiler der JavaScript beschleunigt. Das Konzept der "trace trees" wurde von Andreas Gal und Michael Franz an der Universität Kalifornien entwickelt und zusammen mit einigen Mozilla-Entwicklern im Rahmen des Tamarin-Projekts auf die kommende Firefox-Generation übertragen.

SunSpider: Firefox 3.1 Nightly Build mit und ohne TraceMonkey
SunSpider: Firefox 3.1 Nightly Build mit und ohne TraceMonkey
Der Tracing-Mechanismus zeichnet die unterschiedlichen Pfade, die beim Durchlauf einer Schleife auftreten können, während der Laufzeit auf und generiert kompilierten Code, der erneut genutzt werden kann, wenn später ein solcher Pfad wieder erreicht wird. Details erklärt Andreas Gal in einem Blog-Eintrag.

Bis diese neue Javascript-Engine zum Einsatz kommt, wird noch einige Zeit vergehen. In den letzten zwei Monaten integrierten daher einige Mozilla-Entwickler zusammen mit Gral und Franz die Technik SpiderMonkey, die in Firefox 3 eingesetzte Javascript-Engine.

Seit Freitag, den 22. August 2008, ist der Code in den aktuellen Entwicklungszweig für Firefox 3.1 integriert und erste, von den Entwicklern veröffentlichte Benchmarks, versprechen einen deutlichen Geschwindigkeitszuwachs.

In den von Javascript-Erfinder Brendan Eich veröffentlichten Benchmarks war die Vorabversion von Firefox 3.1 mit TraceMonkey, in dem vom Webkit-Team veröffentlichten JavaScript-Benchmark, SunSpider rund 1,83mal schneller als Firefox 3.0. In Einzeltests war die aktuelle Entwicklerversion mehr als 30-mal schneller. Allerdings unterscheiden sich die beiden Versionen auch durch weitere Optimierungen.

In einem von Golem.de durchgeführten Vergleich war die aktuelle Entwicklerversion mit aktiviertem TraceMonkey im Schnitt 1,57mal schneller als die gleiche Version mit deaktiviertem TraceMonkey. Teilweise lag die Beschleunigung bei mehr als dem 22fachen. Der Benchmark verwendet allerdings zahlreiche komplexe Stringoperationen, die ohnehin in nativen Code ablaufen und somit durch Änderungen an der Javascript-Engine kaum beschleunigt werden können.

Zudem arbeiten die Mozilla-Entwickler an weiteren Ansätzen um ihre Javascript-Engines zu beschleunigen. Wie sich die Geschwindigkeitszuwächse in realen Applikationen auswirken, zeigte Mike Schroepfer mit einer Browser-basierten Bildbearbeitung.

Standardmäßig ist TraceMonkey in den NightlyBuilds deaktiviert und kann bei about:config unter javascript.options.jit.content aktiviert werden. Integriert ist der TraceMonkey-Code für die Plattformen x86, x86-64 und ARM.

Speziell für Mozilla hat die Beschleunigung von Javascript noch eine direkte Bedeutung: Teile des Browsers sind in Javascript realisiert, so dass Mozilla selbst von der Beschleunigung profitiert.


eye home zur Startseite
Flow77 16. Sep 2008

Erste Frage : Warum hast du deinen Firefox 9 Tage gestartet? Wenn ich in Urlaub fahre...

~nendaz 04. Sep 2008

habt ihr nix anderes zu tun als euch gegenseitig fertig zu machen? ^^ ist zwar amüsant...

Kein Gott 26. Aug 2008

[ ] Du hast schon mal etwas von Inversion of Control gehört? [ ] Du weißt was...

Mein Gott 26. Aug 2008

Nur blöd dass so wie du das machen willst der User erst weider einstellen kann was er...

Fisschleim 26. Aug 2008

Dann kann man es ganz einfach so machen: Button stzten "Globale Richtlinien für den...

Kommentieren


Puhs Blog / 24. Aug 2008

Portable Firefox 3.1 Alpha2 TraceMonkey



Anzeige

  1. Gruppenleiter Projekte und Systembetreuung (m/w)
    BAS Abrechnungsservice GmbH & Co. KG, Berlin
  2. Java Softwareingenieur/in OES Diagnostics
    Robert Bosch GmbH, Plochingen
  3. IT-Spezialistin/IT-Spezialist (Windows-Arbeitsplätze)
    Landeshauptstadt München, München
  4. Abteilungsleiter/-in SAP-Strategie und übergreifende Aufgaben
    Dataport, Hamburg, Altenholz bei Kiel oder Magdeburg

Detailsuche



Anzeige

Folgen Sie uns
       


  1. Basistunnel

    Bestens vernetzt durch den Gotthard

  2. Kniterate

    Der Maker lässt stricken

  3. Maker Faire Hannover 2016

    Denkt denn keiner an die Kinder? Doch, alle!

  4. Bundesverfassungsgericht

    Hip-Hop bleibt erlaubt

  5. Tubeninja

    Youtube fordert Streamripper zur Schließung auf

  6. iPhone 7

    Erste Kopfhörer-Adapter für Lightning-auf-Klinke gesichtet

  7. Wiko Jerry

    Das schwer zu bekommende 100-Euro-Smartphone

  8. Snapdragon Wear 1100

    Neuer Chip für kleine Linux- und RTOS-Wearables

  9. 8x Asus ROG

    180-Hz-Display, Project Avalon, SLI-WaKü-Notebook & mehr

  10. Velohub Blinkers

    Blinker und Laserabstandhalter fürs Fahrrad



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
GPD XD im Test: Zwischen Nintendo 3DS und PS Vita ist noch Platz
GPD XD im Test
Zwischen Nintendo 3DS und PS Vita ist noch Platz
  1. Gran Turismo Sport Ein Bündnis mit der Realität
  2. Xbox Scorpio Schneller als Playstation Neo und mit Rift-Unterstützung
  3. AMD Drei Konsolen-Chips für 2017 angekündigt

Xperia X im Hands on: Sonys vorgetäuschte Oberklasse
Xperia X im Hands on
Sonys vorgetäuschte Oberklasse
  1. Die Woche im Video Die Schoko-Burger-Woche bei Golem.de - mmhhhh!
  2. Android 6.0 Ein großer Haufen Marshmallow für Samsung und Co.
  3. Google Android N erscheint auch für Nicht-Nexus-Smartphones

Oracle vs. Google: Wie man Geschworene am besten verwirrt
Oracle vs. Google
Wie man Geschworene am besten verwirrt
  1. Oracle-Anwältin nach Niederlage "Google hat die GPL getötet"
  2. Java-Rechtsstreit Oracle verliert gegen Google
  3. Oracle vs. Google Wie viel Fair Use steckt in 11.000 Codezeilen?

  1. Re: Ahja.

    kendon | 11:55

  2. Re: Diese Überschrift

    Bouncy | 11:54

  3. Re: Also sind alle in Gebieten die nicht ausbauen...

    neocron | 11:53

  4. Re: unverständlich

    dg90 | 11:53

  5. Re: es ist der einzige Weg die GEMA-Sperre zu umgehen

    KerberoZ | 11:53


  1. 12:04

  2. 11:49

  3. 11:41

  4. 11:03

  5. 10:40

  6. 10:08

  7. 09:54

  8. 09:10


  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