Il team di sviluppo di Google Chrome, oltre che sulle funzionalità, è costantemente al lavoro su come migliorare le prestazioni del browser, scavando in profondità fino al cuore dell’engine, ottimizzando e aggiornando aspetti quali il modo in cui viene allocata e scartata la memoria o il modo in cui vengono realizzate le build, i package e in cui viene eseguito Chrome, per renderlo ancora più veloce ed efficiente in termini di utilizzo della memoria.
In Chrome M89, il team di sviluppo ha registrato significativi risparmi di memoria su Windows, fino al 22% nel processo del browser, 8% nel renderer e 3% nella GPU. Ancora: è stata migliorata la reattività del browser fino al 9%.
Il team ha ottenuto questi risultati utilizzando PartitionAlloc, il memory allocator avanzato, che è ottimizzato per una bassa latenza di allocazione, efficienza nello spazio utilizzato e per la sicurezza.
Da qualche tempo PartitionAlloc viene usato estensivamente all’interno di Blink, il motore di rendering. A partire dalla versione M89, il team ha aggiornato Chrome su Android e Windows a 64 bit per l’utilizzo di PartitionAlloc ovunque.
Oltre a migliorare il modo di allocare la memoria, Chrome è ora anche più smart nell’utilizzo. Chrome ora recupera fino a 100MiB per tab, che è più del 20% su alcuni siti popolari, scartando la memoria che la scheda in primo piano non sta utilizzando attivamente, come le immagini più grandi che l’utente ha fatto scorrere fuori dallo schermo.
Chrome sta anche riducendo la sua memory footprint nelle schede in background su macOS, come era già stato fatto su altre piattaforme. Qui si registra, secondo il team di sviluppo, fino all’8% di risparmio di memoria, che è più di 1GiB in alcuni casi.
Infine, con più dati dal campo disponibili dal Tab throttling, il team ha registrato fino al 65% di miglioramento nello score Apple Energy Impact per le schede in background, nel mantenere la temperatura del Mac più bassa e le ventole più silenziose.
Il repackaging di Chrome su Android ha consentito di ottenere meno crash dovuti all’esaurimento delle risorse, un miglioramento del 5% nell’uso della memoria, tempi di avvio più veloci del 7,5% e fino al 2% di caricamento delle pagine più rapido.
Inoltre, per gli utenti con gli ultimi dispositivi Android (Android Q e superiore e 8GB e più di RAM), il team ha realizzato la build Chrome come binario a 64 bit, più stabile e fino all’8,5% più veloce a caricare le pagine e il 28% più fluido nello scorrimento e nella latenza di input.
Infine, il team ha sviluppato un modo per far sì che Chrome su Android si avvii il 13% più velocemente: Freeze-Dried Tab. Chrome ora salva una versione leggera delle schede con dimensioni simili a uno screenshot, ma con supporto per lo scorrimento, lo zoom e la selezione dei link. Chrome usa queste Freeze-Dried Tabs all’avvio, mentre la scheda vera e propria si carica in background, visualizzando più velocemente le pagine.