An inganta aikin haɗar JIT da kyau a cikin ginin dare na Firefox

В dare yana gini Firefox hada sabunta JIT compiler, ci gaba mai suna WarpBuilder. Don kunna sabon JIT, ana ba da zaɓin "javascript.options.warp" a game da: config.
An lura cewa WarpBuilder shine kawai mataki na farko don haɗa sabbin abubuwan ingantawa a cikin mai binciken, wanda aka shirya aiwatarwa a cikin shekara mai zuwa.

Sabuwar JIT tana haɓaka aikin injin SpiderMonkey JavaScript ta hanyar rage nau'in bayanan ciki da aka bibiya a cikin injin kuma ta amfani da dabarar Caching Code (CacheIR) a baya. shawara a cikin fassarar bytecode na "tushe", wanda ke ƙunshe da tsaka-tsakin tsaka-tsaki tsakanin mai fassara na yau da kullun da mai tarawa pre-JIT. Waɗannan canje-canjen sun ba da damar sauƙaƙe tsarin gine-ginen JIT, haɓaka amsawa, rage lokacin ɗaukar shafi da rage yawan ƙwaƙwalwar ajiya.

An luracewa sabuwar JIT ta warware matsaloli da yawa na tsohuwar JIT IonBuilder, kamar:

  • Matsalolin aiwatarwa da yuwuwar matsalolin tsaro;
  • Ƙarin kan gaba don lambar Baseline/C++;
  • Ƙwararren ƙwarewa mai yawa wanda ke haifar da sake haɗawa da ba dole ba;
  • Samar da matsakaicin lamba NI (Middle-level IR) a cikin babban zaren (a cikin WarpBuilder, babban taro na lambar tsaka-tsaki an sanya shi a cikin zaren daban);
  • Ƙarin amfani da ƙwaƙwalwar ajiya don adana bayanai game da nau'ikan da ƙungiyoyin abubuwa (Groups).

A matsakaita, a cikin gwaje-gwajen da ke kimanta aikin bisa ga ma'aunin gani, ana lura da saurin 5-15% yayin amfani da WarpBuilder. Matsakaicin kammala gwajin mita ya karu da kashi 10%. Gwaji akan shafukan yanar gizo na gaske ya nuna raguwar lokacin loda Docs na Google ta hanyar 20%, index SpeedIndex lokacin buɗe sashin Android akan Reddit ya inganta ta 13%, pdfpaint ya fara aiki da sauri 18%. Amfanin ƙwaƙwalwar ajiya a cikin gwaji tp6 ya ragu da kashi 8%. Alamar ƙididdiga a cikin kayan aikin haɓakawa (devtools perf) kuma ya nuna raguwar 8% na yawan ƙwaƙwalwar ajiya.

source: budenet.ru

Add a comment