Mozilla: Kompakte String-Kodierung in Firefox spart Speicher

Die Javascript-Engine von Firefox belegt künftig nur noch 1 statt wie bisher 2 Byte für die meisten Zeichen in Javascript. Die verwendete Latin1-Kodierung spart Speicher und beschleunigt den Browser sogar ein wenig.

Artikel veröffentlicht am ,
Die neuen Strings belegen deutlich weniger Speicher.
Die neuen Strings belegen deutlich weniger Speicher. (Bild: Mozilla - CC-BY-SA 3.0)

Statt des bisher verwendeten UTF-16-Encodings wird die Javascript-Engine in Firefox künftig, wann immer möglich, die Latin1-Kodierung verwenden. Einzelne Zeichen belegten dann nur noch 1 Byte, statt wie bisher zwei, wie Mozilla-Entwickler Jan de Mooij erklärt. Das sei eine rein interne Veränderung, das Verhalten von Javascript-Code werde dadurch nicht beeinflusst.

Stellenmarkt
  1. Cloud Engineer AWS (m/w/d)
    Metaways Infosystems GmbH, Hamburg
  2. Product Owner (m/w/d) Cloud Entwicklungsumgebung
    Deutsche Bundesbank, Frankfurt am Main, Düsseldorf, Hannover, München, Stuttgart
Detailsuche

In den meisten Situationen reduziert diese neue Methode den Speicherbedarf, wie zu erwarten, fast um die Hälfte. In einem Test mit dem Code von GMail ließen sich dabei etwa 90 Prozent der Strings in dem neuen Format repräsentieren. Einige längere Strings verwendeten aber nach wie vor das alte Format, da sich diese nicht umwandeln ließen.

Internationale Webseiten kein Problem

Dieser Ansatz funktioniere auch bei Webseiten, die keine der westlichen Sprachen benutzten. Denn auch diese verwendeten für "Eigenschaftsnamen, DOM-Strings und andere Identifier sehr viele Latin1-Strings". Selbst unter den Top-10 der chinesischen Webseiten müssten lediglich 28 Prozent des Codes weiterhin in dem alten Format gespeichert werden, versicherte der Entwickler, der lediglich zwei Monate an der Umstellung gearbeitet habe.

Neben der eigentlichen Umsetzung in JSString überarbeitete de Mooij auch sämtliche Funktionen in der Javascript-Engine Spidermonkey ebenso wie in der Rendering-Engine Gecko. Einige Operationen mussten aber in der bisherigen Form erhalten bleiben, da sonst noch größere Arbeiten an dem gesamten Code des Firefox angestanden hätten. Die Funktionsweise soll das aber nicht beeinträchtigen.

Golem Akademie
  1. Jira für Systemadministratoren: virtueller Zwei-Tage-Workshop
    24.–25. Januar 2022, virtuell
  2. Hands-on C# Programmierung: virtueller Zwei-Tage-Workshop
    12.–13. Januar 2022, virtuell
Weitere IT-Trainings

Dank der neuen Repräsentation der Strings können auf 64-Bit-Systemen bis zu 15 Zeichen lange Ketten inline gespeichert werden, was unter anderem die Leistung verbessern kann. Letzteres sei zwar nicht das Hauptziel der Entwicklung gewesen, zeige sich dennoch in Benchmarks. So laufe der Sunspider-Teil für reguläre Ausdrücke nun um 36 Prozent schneller.

Der Code befindet sich derzeit in Firefox Nightly und soll mit Firefox 33 Mitte Oktober dieses Jahres erscheinen.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Arbeiten bei SAP
Nur die Gassi-App geht grad nicht

SAP bietet seinen Mitarbeitern einiges. Manchen mag das zu viel sein, aber die geringe Fluktuation spricht für das Softwareunternehmen.
Von Elke Wittich

Arbeiten bei SAP: Nur die Gassi-App geht grad nicht
Artikel
  1. Truth Social: Trumps Twitter-Klon erhält Milliarde von Investoren
    Truth Social
    Trumps Twitter-Klon erhält Milliarde von Investoren

    Für den Aufbau seiner Twitter-Alternative Truth Social hat sich der frühere US-Präsident Trump die Unterstützung unbekannter Investoren gesichert.

  2. SpaceX: Das Starship für den Mars soll gebaut werden
    SpaceX
    Das Starship für den Mars soll gebaut werden

    Elon Musk hat via Twitter den Bau seines Mars-Starships angekündigt. Dazu schreibt der SpaceX-Gründer, dass es endlich Realität werden soll.

  3. Nano-Chip: Umprogrammierung von biologischem Gewebe im lebenden Körper
    Nano-Chip
    Umprogrammierung von biologischem Gewebe im lebenden Körper

    Hautgewebe in Blutgefäße umwandeln? Ein Forschungsteam hat dafür einen Nano-Chip entwickelt. Bald könnte er am Menschen getestet werden.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Bosch Professional Werkzeug und Zubehör • Corsair Virtuoso RGB Wireless Gaming-Headset 187,03€ • Noiseblocker NB-e-Loop X B14-P ARGB 24,90€ • ViewSonic VX2718-2KPC-MHD (WQHD, 165 Hz) 229€ • Alternate (u. a. Patriot Viper VPN100 2 TB SSD 191,90€) [Werbung]
    •  /