Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Chrome 91: Sparkplug e short builtin calls migliorano le performance

Chrome 91 promette prestazioni migliori del 23% rispetto al passato grazie alle nuove implementazioni degli engine Blink (rendering) e V8 (JavaScript)
Chrome 91: Sparkplug e short builtin calls migliorano le performance
Chrome 91 promette prestazioni migliori del 23% rispetto al passato grazie alle nuove implementazioni degli engine Blink (rendering) e V8 (JavaScript)
Link copiato negli appunti

Tra le novità di Chrome 91, ultima versione del browser Web creato da Mountain View, vi dovrebbe essere anche un notevole incremento delle prestazioni rispetto alle precedenti release del progetto. Questo miglioramento sarebbe stato il risultato di interventi tecnici che avrebbero coinvolto in particolar modo il motore JavaScript V8, realizzato in C++ e pensato per supportare ECMAScript, e il rendering engine Blink che è notoriamente un fork del progetto WebKit.

Come sottolineato dal Product Manager di Chrome Thomas Nattestad in un post appositamente dedicato e pubblicato sul blog di Chromium, grazie al nuovo compilatore Sparkplug e alle short builtin calls l'applicazione dovrebbe garantire un livello di performance superiore fino al 23% se confrontato che quello delle versioni rilasciate in passato. Grazie a questo traguardo, e considerando l'attuale numero di installazioni di Chrome, dovrebbero essere risparmiati ogni giorno circa 17 anni di lavoro per le CPU.

Il compilatore Sparkplug

Per capire il funzionamento di Sparkplug bisogna tenere conto del fatto che il motore V8 integra diversi compilatori in grado di generare carichi di lavoro differenti durante le varie fasi di esecuzione di JavaScript. A questo proposito 3 anni fa i developer di Big G lanciarono un nuovo sistema di compilazione formato da 2 componenti: Ignition e Turbofan.

Il primo è un interprete di bytecode che ha sostanzialmente il compito di eseguire JavaScript limitando al minimo le latenze, il secondo invece ha funzioni di ottimizzazione e produce codice macchina ad alte prestazioni basandosi sui dati rilevati durante l'esecuzione di JavaScript. Date le diverse caratteristiche delle due componenti, Turbofan tende quindi a registrare tempi di avvio più lenti rispetto a quelli di Ignition.

Sparkplug opera un bilanciamento tra l'attività di Ignition e quella di Turbofan in quanto genera codice macchina nativo indipendente dalle informazioni raccolte nel corso dell'esecuzione del codice JavaScript. Ne conseguono tempi di avvio più rapidi e di conseguenza livelli di performance più elevati.

Le short builtin calls

Con le short builtin calls Chrome beneficia ora di un meccanismo con cui l'engine V8 può ottimizzare il posizionamento in memoria del codice generato. Nel momento in cui il motore produce del codice specifico a livello di CPU da JavaScript vengono effettuate delle chiamate frequenti a delle funzioni builtin, sostanzialmente degli snippet deputati alla gestione di comuni routine, con risultati negativi a livello di ottimizzazione delle risorse messe a disposizione dal processore.

Gli sviluppatori hanno quindi deciso di risolvere questo problema copiando tali funzioni nello stesso spazio di memoria del codice generato, un cambiamento che dovrebbe garantire dei risultati ottimali dal punto dell'efficienza soprattutto quando si lavora con i chip M1 di Apple.

Ti consigliamo anche