Im Firefox aktualisierter JIT-Compiler, unter dem Codenamen WarpBuilder. Zur Aktivierung des neuen JIT in about:config wurde die Option âjavascript.options.warpâ angeboten.
Es wird darauf hingewiesen, dass WarpBuilder nur der erste Schritt auf dem Weg zur Implementierung neuer Optimierungen im Browser ist, die im Laufe des nÀchsten Jahres umgesetzt werden sollen.
Der neue JIT ermöglicht eine Leistungssteigerung des JavaScript-Engines SpiderMonkey durch die Reduzierung der internen Typinformationen, die innerhalb der Engine verfolgt werden, und durch die Anwendung der Technik der Zwischencode-Caching (CacheIR), die zuvor im âBaselineâ-Interpreter fĂŒr Bytecode, der eine Zwischenposition zwischen dem normalen Interpreter und dem vorgelagerten JIT-Compiler einnimmt. Diese Ănderungen haben es ermöglicht, die Architektur des JIT deutlich zu vereinfachen, die ReaktionsfĂ€higkeit zu erhöhen, die Ladezeit von Seiten zu verkĂŒrzen und den Speicherverbrauch zu reduzieren.
, dass der neue JIT viele Probleme des alten JIT IonBuilder gelöst hat, wie zum Beispiel:
- KomplexitÀt der Implementierung und potenzielle Sicherheitsprobleme;
- ZusĂ€tzlicher Overhead fĂŒr Baseline/C++-Code;
- ĂbermĂ€Ăige Spezialisierung, die zu unnötigen Rekompilierungen fĂŒhrt;
- Generierung von Zwischencode (Middle-level IR) im Hauptthread (in WarpBuilder wird die Hauptsammlung des Zwischencodes in einen separaten Thread ausgelagert);
- ZusÀtzlicher Speicherverbrauch zur Speicherung von Typ- und Objektgruppendaten (ObjectGroups).
Im Durchschnitt zeigen Tests, die die Leistung auf Basis visueller Metriken bewerten, dass bei Verwendung von WarpBuilder eine Beschleunigung um 5-15% zu beobachten ist. Die Geschwindigkeit des Speedometer-Tests erhöhte sich um 10%. Tests auf realen Websites zeigten eine verkĂŒrzte Ladezeit von Google Docs um , der Wert beim Ăffnen des Android-Bereichs in Reddit verbesserte sich um , pdfpaint wurde schneller bei . Der Speicherverbrauch im Test sank um 8%. in den Entwicklertools (devtools perf) zeigten ebenfalls einen RĂŒckgang des Speicherverbrauchs um 8%.
Quelle: opennet.ru
