Mozilla: Kompakte String-Kodierung in Firefox spart Speicher
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(öffnet im neuen Fenster) . Das sei eine rein interne Veränderung, das Verhalten von Javascript-Code werde dadurch nicht beeinflusst.
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.
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.
- Anzeige Hier geht es zu den besten Monitoren bei Amazon Wenn Sie auf diesen Link klicken und darüber einkaufen, erhält Golem eine kleine Provision. Dies ändert nichts am Preis der Artikel.



