Ukusebenza kokuhlanganiswa kwe-JIT kuye kwathuthukiswa ngokuphawulekayo ekwakhiweni kwasebusuku kweFirefox

Π’ yakha ebusuku Firefox kuhlanganisiwe i-JIT compiler ebuyekeziwe, ithuthukisiwe ikhodi ye-WarpBuilder. Ukuze unike amandla i-JIT entsha, inketho ethi "javascript.options.warp" inikezwa mayelana nokuthi:config.
Kuyaphawulwa ukuthi i-WarpBuilder iyisinyathelo sokuqala kuphela sokufaka ukulungiselelwa okusha esipheqululini, okuhlelelwe ukuthi sisetshenziswe onyakeni olandelayo.

I-JIT entsha ithuthukisa ukusebenza kwenjini ye-SpiderMonkey JavaScript ngokunciphisa ulwazi lohlobo lwangaphakathi olulandelelwa ngaphakathi kwenjini nokusebenzisa inqubo ye-Intermediate Code Caching (CacheIR) ngaphambilini. ehlongozwayo kumhumushi we-bytecode "oyisisekelo", osebenzisa indawo ephakathi nendawo phakathi komhumushi ovamile kanye nomhlanganisi wangaphambi kwe-JIT. Lezi zinguquko zenze kwaba lula ukwenza lula ukwakheka kwe-JIT, ukwandisa ukuphendula, ukunciphisa isikhathi sokulayisha ikhasi kanye nokunciphisa ukusetshenziswa kwememori.

Kuyaphawulwaukuthi i-JIT entsha ixazulule izinkinga eziningi ze-JIT IonBuilder endala, njenge:

  • Ukuxaka kokuqaliswa kanye nezinkinga zokuphepha ezingaba khona;
  • I-overhead eyengeziwe yekhodi ye-Baseline/C++;
  • Ubuchwepheshe obudlulele obuholela ekubuyiselweni kabusha okungadingekile;
  • Ikhiqiza ikhodi ephakathi UMIR (I-IR yezinga eliphakathi) kuntambo eyinhloko (ku-WarpBuilder, umhlangano oyinhloko wekhodi ephakathi ibekwe emculweni ohlukile);
  • Ukusetshenziswa okwengeziwe kwenkumbulo yokugcina idatha mayelana nezinhlobo namaqembu ezinto (ObjectGroups).

Ngokwesilinganiso, ekuhlolweni okuhlola ukusebenza ngokusekelwe kumamethrikhi abonakalayo, ukusheshisa okungu-5-15% kuyabonwa uma kusetshenziswa i-WarpBuilder. Izinga lokuqedwa kokuhlolwa kwe-Speedometer likhuphuke ngo-10%. Ukuhlola kumasayithi wangempela kubonise ukuncipha kwesikhathi sokulayisha se-Google Amadokhumenti ngo 20%, inkomba I-SpeedIndex lapho uvula isigaba se-Android ku-Reddit sithuthukiswe ngu 13%, i-pdfpaint yaqala ukusebenza ngokushesha 18%. Ukusetshenziswa kwememori ekuhlolweni I-tp6 yehle ngo-8%. Izinkomba izibalo kumathuluzi onjiniyela (i-devtools perf) nazo zibonise ukuncipha kwe-8% kokusetshenziswa kwememori.

Source: opennet.ru

Engeza amazwana