Chrome 91: 23% sneller met een nieuwe JavaScript-compiler

Google heeft een Laatste versie Vanaf de browser deze week met de mogelijkheid om tabbladgroepen te bevriezen en PWA’s uit te voeren bij het opstarten. Onder de motorkap is Chrome 91 23% sneller dankzij een Een paar JavaScript-plug-ins.

Een van de belangrijke componenten voor het renderen van een snelle browser is een snelle JavaScript-uitvoering. In Chrome wordt deze taak uitgevoerd door de V8-engine, die elke dag meer dan 78 jaar JavaScript-code uitvoert.

Het begint met een nieuwe JavaScript-compiler die “het gat opvult tussen de noodzaak om de uitvoering snel te starten en uw code te optimaliseren voor maximale prestaties.” Chrome gebruikt een vertaler genaamd Ignition voor het vorige scenario en Turbofan voor het laatste scenario. Beide zijn drie jaar geleden geïntroduceerd als onderdeel van een gelokaliseerd systeem met twee niveaus.

Ignition is een byte-code compiler wiens taak het is om JavaScript met zo min mogelijk vertraging uit te voeren. Turbofan is een geoptimaliseerde vertaler die hoogwaardige machinecode maakt op basis van informatie die is verzameld tijdens JavaScript-uitvoering; Als gevolg hiervan start het langzamer op dan de bytecode-compiler van Ignition.

Sparkplug voegt nog een compiler toe en “vindt een balans” tussen de twee doordat het systeemeigen apparaatcode genereert, maar het vertrouwt niet op informatie die is geleerd tijdens het uitvoeren van JavaScript-code.

Hierdoor kan het snel met de uitvoering beginnen terwijl er toch een relatief snelle code wordt gemaakt. Zie voor een compleet, diepgaand technisch overzicht van wat er nodig is om deze nieuwe motor te maken V8-blogbericht.

Ondertussen hebben de kortere builds een geoptimaliseerde V8-engine omdat de gegenereerde code in het geheugen wordt geplaatst om indirecte hops te voorkomen bij het aanroepen van functies.

Wanneer V8 CPU-code genereert vanuit JavaScript, wordt die code in het geheugen geplaatst. Deze vaak gegenereerde code roept inline-functies aan, wat kleine stukjes code zijn om algemene acties af te handelen – alles van basisbewerkingen zoals het toevoegen van twee variabelen tot volledige functionaliteit in de standaard JavaScript-bibliotheek. Voor sommige CPU’s kan het aanroepen van functies ver van de gegenereerde code ervoor zorgen dat interne CPU-optimalisaties (zoals vertakkingslogica) mislukken. De oplossing hiervoor is om de inline-functionaliteit naar hetzelfde geheugengebied te kopiëren als de gegenereerde code.

Google zegt dat de ingebouwde korte oproepen “bijzonder indrukwekkend zijn voor de nieuwe Apple M1-chip” met Meer technische details zijn hier beschikbaar. In totaal is Chrome 91 nu 23% sneller en bespaart het 17 jaar CPU-tijd van de gebruiker per dag met deze JavaScript-updates.


Kijk op 9to5Google op YouTube voor meer nieuws:

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *