JIT-kompileringsydelsen er blevet mærkbart forbedret i Firefox natlige builds

В natlige byggerier Firefox inkluderet opdateret JIT compiler, udviklede sig kodenavnet WarpBuilder. For at aktivere den nye JIT er "javascript.options.warp" muligheden tilvejebragt i about:config.
Det bemærkes, at WarpBuilder kun er det første skridt mod at inkorporere nye optimeringer i browseren, som er planlagt implementeret i løbet af det næste år.

Den nye JIT forbedrer ydeevnen af ​​SpiderMonkey JavaScript-motoren ved at reducere den interne typeinformation sporet i motoren og ved at bruge Intermediate Code Caching (CacheIR) teknikken tidligere foreslog i "baseline"-bytekodefortolkeren, som optager en mellemliggende niche mellem en almindelig fortolker og en præ-JIT-kompiler. Disse ændringer gjorde det muligt at forenkle JIT-arkitekturen markant, øge reaktionsevnen, reducere sideindlæsningstiden og reducere hukommelsesforbruget.

Det er noteretat den nye JIT løste mange problemer i den gamle JIT IonBuilder, såsom:

  • Kompleksitet af implementering og potentielle sikkerhedsproblemer;
  • Yderligere overhead for Baseline/C++ kode;
  • Overdreven specialisering, der fører til unødvendige omkompileringer;
  • Generering af mellemkode MIG (Mellemniveau IR) i hovedtråden (i WarpBuilder er hovedsamlingen af ​​mellemkoden placeret i en separat tråd);
  • Ekstra hukommelsesforbrug til lagring af data om typer og grupper af objekter (ObjectGroups).

I gennemsnit, i test, der evaluerer ydeevne baseret på visuelle målinger, observeres en hastighedsstigning på 5-15 %, når du bruger WarpBuilder. Gennemførelsesraten for speedometertest steg med 10 %. Test på rigtige websteder viste en reduktion i indlæsningstid for Google Docs med 20 %, indeks SpeedIndex når du åbner Android-sektionen på Reddit forbedret med 13 %, begyndte pdfpaint at arbejde hurtigere på 18 %. Hukommelsesforbrug i testen tp6 faldet med 8 pct. Indikatorer statistik i udviklerværktøjer (devtools perf) viste også en 8% reduktion i hukommelsesforbrug.

Kilde: opennet.ru

Tilføj en kommentar