Google je nedavno izbacio Chrome 91 na stabilnom kanalu i nudi 23% brže performanse zbog promjena spomenutih u objavi.
Google nedavno izbačen Chrome 91 na stabilnom kanalu. Ažuriranje je uvelo mnoštvo promjena, uključujući obnovljene kontrole obrazaca, podršku za zadani način rada radne površine na uređajima s velikim zaslonom, poboljšanja API-ja za pristup sustavu datoteka i još mnogo toga. Ažuriranje je također došlo s nizom poboljšanja performansi, a Google je sada otkrio da najnovije ažuriranje čini Chrome do 23% bržim od prethodnog izdanja.
U nedavna objava na Chromium blog, voditelj Chrome proizvoda Thomas Nattestad otkrio je da Chrome 91 "sada je do 23% brži s lansiranjem a novi kompajler Sparkplug i kratki ugrađeni pozivištedi više od 17 godina CPU vremena naših korisnika svaki dan!" Post objašnjava da je Sparkplug novi JavaScript prevodilac koji "popunjava prazninu između potrebe da se brzo počne izvršavati i optimiziranja koda za maksimalnu izvedbu."S druge strane, ugrađeni kratki pozivi optimiziraju
"gdje u memoriju stavljamo generirani kod kako bismo izbjegli neizravne skokove pri pozivanju funkcija."Chromeov motor V8 sadrži višestruke prevoditelje koji prave različite kompromise tijekom različitih faza izvršavanja JavaScripta. Novi kompajler Sparkplug uspostavlja ravnotežu između dvoslojnog kompajlerskog sustava motora -- paljenja i turboventilatora -- za generiranje izvornog strojnog koda bez ovisnosti o informacijama prikupljenim tijekom izvršavanja JavaScripta kodirati. Zbog toga je "brzo se počinje izvršavati dok još uvijek generira relativno brz kod," čime se poboljšava učinak.
Short builtins je novi mehanizam koji pomaže V8 motoru optimizirati mjesto u memoriji generiranog koda. "Kada V8 generira kôd specifičan za CPU iz JavaScripta, postavlja taj kôd u memoriju. Ovaj generirani kod često će pozivati ugrađene funkcije, koje su mali isječci koda za rukovanje uobičajenim rutinama --sve od osnovnih operacija kao što je dodavanje dviju varijabli, do potpunih funkcija u JavaScript standardu knjižnica. Za neke CPU-e, pozivanje funkcija koje su dalje od vašeg generiranog koda može uzrokovati neuspjeh internih optimizacija CPU-a (kao što je logika predviđanja grananja). Rješenje za ovo je kopiranje ugrađenih funkcija u isto područje memorije kao i generirani kod," dodaje se u objavi. Nadalje se napominje da bi ova promjena trebala poboljšati performanse Chromea na Apple M1 čipu.
Da biste saznali više o ovim nadogradnjama performansi, pogledajte Chrome V8 post na blogu.