In Firefox aktualisierter JIT-Compiler, unter dem Codenamen WarpBuilder. Um den neuen JIT in about:config zu aktivieren, wird die Option «javascript.options.warp» angeboten.
Es ist anzumerken, dass WarpBuilder nur der erste Schritt auf dem Weg zur EinfĂŒhrung neuer Optimierungen im Browser ist, die im Laufe des nĂ€chsten Jahres umgesetzt werden sollen.
Der neue JIT ermöglicht eine Leistungssteigerung der JavaScript-Engine SpiderMonkey durch die Reduzierung der internen Typinformationen, die innerhalb der Engine verfolgt werden, und durch die Anwendung einer Technik zur Zwischenspeicherung von Zwischencode (CacheIR), die bereits im «Baseline»-Interpreter fĂŒr Bytecode, der eine Zwischenposition zwischen dem regulĂ€ren Interpreter und dem vorgelagerten JIT-Compiler einnimmt. Diese Ănderungen haben die Architektur des JIT erheblich vereinfacht, die ReaktionsfĂ€higkeit verbessert, die Ladezeit der Seite verkĂŒrzt und den Speicherverbrauch gesenkt.
, was der neue JIT ermöglichte, viele Probleme des alten JIT IonBuilder zu lösen, wie z. B.:
- KomplexitÀt der Implementierung und mögliche Sicherheitsprobleme;
- ZusĂ€tzliche Overheadkosten fĂŒr Baseline/C++-Code;
- ĂbermĂ€Ăige Spezialisierung, die zu unnötigen Neukompilationen fĂŒhrt;
- Erzeugung von Zwischencode. (Middle-level IR) im Hauptstrom (in WarpBuilder wird die Hauptzusammenstellung des Zwischencodes in einen separaten Strom ausgelagert);
- ZusĂ€tzlicher Speicherverbrauch zur Speicherung von Informationen ĂŒber Objekttypen und Gruppen (ObjectGroups).
Im Durchschnitt zeigt sich in Tests, die die Leistung basierend auf visuellen Metriken bewerten, eine Beschleunigung um 5-15% bei der Verwendung von WarpBuilder. Die Geschwindigkeit des Speedometer-Tests erhöhte sich um 10%. Tests auf echten Websites haben eine VerkĂŒrzung der Ladezeit von Google Docs ergeben auf , die Kennzahl verbesserte sich beim Ăffnen des Android-Bereichs in Reddit um , pdfpaint arbeitet schneller bei . Der Speicherverbrauch im Test sank um 8%. der Statistiken in den Entwicklertools (devtools perf) zeigten ebenfalls einen RĂŒckgang des Speicherverbrauchs um 8%.
Quelle: opennet.ru
