Abo
  • Services:
Anzeige
Javascript-Generatoren in Spidermonkey nun so schnell wie in V8
Javascript-Generatoren in Spidermonkey nun so schnell wie in V8 (Bild: Mozilla)

Firefox: Spidermonkey beschleunigt Javascript-Generatoren im Firefox

Javascript-Generatoren in Spidermonkey nun so schnell wie in V8
Javascript-Generatoren in Spidermonkey nun so schnell wie in V8 (Bild: Mozilla)

Dank einiger Optimierungen an der Spidermonkey-Engine sind Javascript-Generatoren im Firefox nun über zwanzigmal so schnell wie vorher. Damit ist der Code wieder gleichauf mit Googles V8.

Anzeige

Die in der Spezifikation von Ecmascript 6 definierten Generator-Konstrukte werden von der Javascript-Engine des Firefox, Spidermonkey, 22-mal so schnell ausgeführt wie bisher, wie der Entwickler Andy Wingo in seinem Blog schreibt. Über Generatoren lässt sich die Funktionsausführung zwischenzeitlich unterbrechen, was etwa beim Verarbeiten von Live-Datenströmen hilfreich sein kann.

Eine erste Implementierung dieser ist durch ein Sponsoring von Bloomberg bereits seit Firefox 26 in Spidermonkey enthalten. Doch bisher seien diese nur durch die unterste und langsamste Schicht der Engine ausgeführt worden, was Wingo mit der Wahl der eher einfachen Implementierung der Generatoren begründet. Diese ließe sich aber nicht vom JIT-Compiler verwenden.

Unterbrochene Generatoren werden nun als "Schnappschuss des Status eines Aufrufrahmens (Stackframe), anstatt als Aufrufrahmen selbst" repräsentiert. Dafür haben die Entwickler zunächst Optimierungen vorgenommen, um diesen Schnappschuss zu verkleinern und schließlich die Generatoren auf dem "normalen Interpreter-Stack" zu implementieren. Der Maintainer des JIT-Teils in Spidermonkey Jan de Mooij übernahm letztlich noch ausstehende Patches und verbesserte weiter.

So werden die Generatoren JIT-kompiliert, was in einfachen Benchmarks zu der genannten Beschleunigung führen kann. Den Angaben von Wingo zufolge ist Spidermonkey damit nun wieder ähnlich schnell wie Googles V8 beim Ausführen dieses Funktionstyps.

Das Verhalten der Generatoren kann in vielen Sprachen implementiert werden, ohne dass dafür bestimmte Funktionstypen notwendig sind, auch in Javascript. Die Implementierung in Ecmascript 6 ist deshalb als syntaktischer Zucker zu betrachten, der das Schreiben von dem notwendigen Quelltext etwas vereinfacht. Das dafür notwendige Schlüsselwort function* erinnert wegen des Sternchens an einen Zeiger in anderen Sprachen, ist mit diesen aber nicht vergleichbar, da die Sprache Javascript über keine Zeiger verfügt.


eye home zur Startseite
TheUnichi 17. Nov 2014

22% von 3 sind 0.66, der Unterschied zwischen 3 und 3.66 ist alles andere als ein "gutes...

irisquelle 16. Nov 2014

Ich habe ja keine Fundamentalkritik an Firefox geübt, sondern lediglich die Prioritäten...

Lala Satalin... 15. Nov 2014

Für mich muss ein Browser nicht nur alle Funktionen bieten, sondern auch schnell sein...



Anzeige

Stellenmarkt
  1. eQ-3 Entwicklung GmbH, Leer
  2. Capgemini Deutschland, verschiedene Standorte
  3. Deutsche Telekom AG, Darmstadt
  4. Leica Microsystems CMS GmbH, Wetzlar


Anzeige
Top-Angebote
  1. (alle Angebote versandkostenfrei, u. a. GTA V PS4/XBO für 27,00€ und Fast & Furious 1-7 Box Blu...
  2. (u. a. Wolverine 1&2, Iron Man 1-3 und Avengers)
  3. (u. a. Total War: WARHAMMER 24,99€ und Rome: Total War Collection 2,75€)

Folgen Sie uns
       


  1. Analysepapier

    Facebook berichtet offiziell von staatlicher Desinformation

  2. Apple

    Qualcomm reduziert Prognose wegen zurückgehaltener Zahlungen

  3. Underground Actually Free

    Amazon beendet Programm mit komplett kostenlosen Apps

  4. Onlinelexikon

    Türkische Behörden sperren Zugang zu Wikipedia

  5. Straßenverkehr

    Elon Musk baut U-Bahn für Autos

  6. Die Woche im Video

    Mr. Robot und Ms MINT

  7. Spülbohrverfahren

    Deutsche Telekom "spült" ihre Glasfaserkabel in die Erde

  8. Privacy Phone

    John McAfee stellt fragwürdiges Smartphone vor

  9. Hacon

    Siemens übernimmt Software-Anbieter aus Hannover

  10. Quartalszahlen

    Intel bestätigt Skylake-Xeons für Sommer 2017



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Elektromobilität: Wie kommt der Strom in die Tiefgarage?
Elektromobilität
Wie kommt der Strom in die Tiefgarage?
  1. e.GO Life Elektroauto aus Deutschland für 15.900 Euro
  2. Elektroauto VW testet E-Trucks
  3. Elektroauto Opel Ampera-E kostet inklusive Prämie ab 34.950 Euro

In eigener Sache: Die Quanten kommen!
In eigener Sache
Die Quanten kommen!
  1. In eigener Sache Golem.de führt kostenpflichtige Links ein
  2. In eigener Sache Golem.de sucht Marketing Manager (w/m)
  3. In eigener Sache Golem.de geht auf Jobmessen

Snap Spectacles im Test: Das Brillen-Spektakel für Snapchat-Fans
Snap Spectacles im Test
Das Brillen-Spektakel für Snapchat-Fans
  1. Kamera Facebook macht schicke Bilder und löscht sie dann wieder
  2. Snap Spectacles Snap verkauft Sonnenbrille mit Kamera für 130 US-Dollar
  3. Soziales Netzwerk Snapchat geht an die Börse - und Google profitiert

  1. Re: Objektiv oder Subjektiv

    neocron | 23:37

  2. Re: Und wohin mit den ganzen Leitungen?

    Heinzel | 23:31

  3. Re: gestern vdsl50 erstmals getestet

    neocron | 23:21

  4. Re: alternative Demokratie

    Niaxa | 23:07

  5. Re: Wie wärs mit öffentlichen Verkehrsmitteln?!

    Iomegan | 23:06


  1. 15:07

  2. 14:32

  3. 13:35

  4. 12:56

  5. 12:15

  6. 09:01

  7. 08:00

  8. 18:05


  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