Në Firefox kompajleri JIT i përmirësuar, nën emrin e kodit WarpBuilder. Për aktivizimin e JIT të ri në about:config, ofrohet mundësia "javascript.options.warp".
Vlen të theksohet se WarpBuilder është vetëm hapi i parë në rrugën e përfshirjes së optimizimeve të reja në shfletues, të cilat planifikohen të realizohen gjatë vitit të ardhshëm.
JIT-i i ri lejon rritjen e performancĂ«s sĂ« motorit JavaScript SpiderMonkey duke zvogĂ«luar informacionin e brendshĂ«m nĂ« lidhje me tipet, tĂ« ndjekura brenda motorit dhe duke aplikuar teknikĂ«n e ruajtjes sĂ« kodit ndĂ«rmjetĂ«s (CacheIR), e cila mĂ« parĂ« nĂ« interpretorin e bytecode «baseline», i cili zĂ« njĂ« niĆĂ« ndĂ«rmjetĂ«sore mes interpretorit normal dhe kompilatorit JIT tĂ« paratĂ«ndarĂ«. Ndryshimet e cituara lejuan thjeshtimin e ndjeshĂ«m tĂ« arkitekturĂ«s JIT, rritĂ«n ndjeshmĂ«rinĂ«, zvogĂ«luan kohĂ«n e ngarkesĂ«s sĂ« faqes dhe ulĂ«n konsumimin e memories.
, që JIT-i i ri ka lejuar të zgjidhen shumë çështje të JIT-it të vjetër IonBuilder, të tilla si:
- Sfidimi i realizimit dhe problemet potenciale të sigurisë;
- Kostot shtesë për kodin Baseline/C++;
- Specializimi i tepruar, duke çuar në rikompilime të panevojshme;
- Krijimi i kodit ndërmjetës (IR i mesëm) në rrjedhën kryesore (në WarpBuilder, ndërtimi kryesor i kodit ndërmjetës është vendosur në një proces të veçantë);
- Konsumimi i tepruar i memories për ruajtjen e të dhënave mbi tipet dhe grupet e objekteve (ObjectGroups).
Në mesatare, në testet që vlerësojnë performancën bazuar në metrikat vizuale, përdorimi i WarpBuilder ka treguar një përshpejtim prej 5-15%. Shpejtësia e kalimit të testit Speedometer është rritur me 10%. Testimi në site reale ka treguar një zvogëlim të kohës së ngarkesës së Google Docs , treguesi në hapjen e seksionit Android në Reddit është përmirësuar me , pdfpaint është bërë më i shpejtë me . Konsumimi i memories në testin është zvogëluar me 8%. statistikore në mjetet për zhvilluesit (devtools perf) gjithashtu kanë treguar një zvogëlim të konsumit të memories me 8%.
Burimi: opennet.ru
