Pèfòmans konpilasyon JIT yo te amelyore anpil nan Firefox chak swa

В konstriksyon chak swa Firefox enkli mete ajou JIT du, devlope non kode WarpBuilder. Pou pèmèt nouvo JIT la, opsyon "javascript.options.warp" yo bay nan about:config.
Li te note ke WarpBuilder se sèlman premye etap la nan enkòpore nouvo optimize nan navigatè a, ki te planifye yo dwe aplike nan ane kap vini an.

Nouvo JIT la amelyore pèfòmans SpiderMonkey JavaScript motè a lè li redwi enfòmasyon kalite entèn yo swiv nan motè a epi lè li itilize teknik Entèmedyè Kòd Caching (CacheIR) deja. pwopoze nan entèprèt bytecode "debaz" la, ki okipe yon nich entèmedyè ant yon entèprèt regilye ak yon konpilatè pre-JIT. Chanjman sa yo te fè li posib siyifikativman senplifye achitekti JIT la, ogmante repons, diminye tan chaje paj ak diminye konsomasyon memwa.

Li te noteke nouvo JIT la rezoud anpil pwoblèm nan ansyen JIT IonBuilder a, tankou:

  • Konpleksite nan aplikasyon ak pwoblèm sekirite potansyèl;
  • Lòt anlè pou kòd Baseline/C++;
  • Twòp espesyalizasyon ki mennen nan rekonpilasyon ki pa nesesè;
  • Jenere kòd entèmedyè Mir (Mwayen-nivo IR) nan fil prensipal la (nan WarpBuilder, se asanble prensipal la nan kòd entèmedyè a mete nan yon fil separe);
  • Konsomasyon memwa adisyonèl pou estoke done sou kalite ak gwoup objè (ObjectGroups).

An mwayèn, nan tès ki evalye pèfòmans ki baze sou mezi vizyèl, yo obsève yon vitès 5-15% lè w ap itilize WarpBuilder. Pousantaj fini tès kontè vitès ogmante pa 10%. Tès sou sit reyèl te montre yon rediksyon nan tan chaje Google Docs pa 20%, endèks SpeedIndex lè louvri seksyon an Android sou Reddit amelyore pa 13%, pdfpaint te kòmanse travay pi vit sou 18%. Konsomasyon memwa nan tès la tp6 diminye pa 8%. Endikatè estatistik nan zouti pwomotè (devtools perf) te montre tou yon rediksyon 8% nan konsomasyon memwa.

Sous: opennet.ru

Add nouvo kòmantè