Da un anno a questa parte Chrome è più veloce rispetto al passato e utilizza le risorse hardware disponibili in modo più parsimonioso.
Da tempo, come peraltro fanno altri browser, gli sviluppatori di Google hanno provveduto a ridurre la priorità delle schede che sono contemporaneamente aperte in background.
Un approccio del genere ha permesso di ridurre l’uso di CPU, GPU e memoria lasciando più risorse per le altre applicazioni, per il sistema operativo e per quelle schede del browser che l’utente usa davvero.
Da Google si spiega che con una serie di esperimenti è stato accertato che quasi il 20% delle finestre di Chrome è completamente coperto da altre finestre.
Google ha quindi introdotto in Chrome una nuova funzione chiamata Native Window Occlusion che permette di trattare le finestre del browser nascoste da altre finestre come già si faceva per le schede aperte in background.
Dal momento che Windows non condividere uno strumento o un’API per stabilire se una finestra sia completamente nascosta sotto un’altra, Google ha deciso di inventarsi un metodo tutto suo per effettuare questo tipo di verifica.
La sfida si è rivelata davvero complessa perché sono tante le configurazioni con le quali Chrome può avere a che fare: utilizzo di più monitor, desktop virtuali, finestre non completamente opache e così via.
Nell’articolo pubblicato sul blog dell’azienda, Google descrive i passaggi che Chrome applica automaticamente e che permettono di risparmiare risorse macchina.
Il sistema che è stato messo a punto è affidabile perché diversamente, applicando la tecnica Native Window Occlusion su finestre che invece vengono mostrate anche in modo parziale all’utente questi vedrebbe una pagina bianca.
L’utilizzo troppo intensivo della Native Windows Occlusion finirebbe per degradare le prestazioni di Chrome. Dal momento che Windows permette di tracciare i vari eventi di sistema, come le situazioni in cui si muovono le finestre oppure esse vengono ridimensionate/massimizzate/minimizzate, Chrome calcola il momento migliore per elaborare la valutazione e capire se e quando rilasciare risorse impegnate inutilmente.
Google chiarisce che la tecnica Native Windows Occlusion non viene utilizzata più di una volta ogni 16 millisecondi che corrisponde al tempo di visualizzazione di un singolo frame assumendo un frame rate pari a 60 fps.
I risultati ottenuti da Google sono interessanti: un avvio più veloce di Chrome (dall’8,5% al 25,8%), il 3,1% di riduzione dell’utilizzo della memoria della GPU, il 20,4% in meno di frame renderizzati dal motore del browser.
Google e Microsoft hanno invece deciso di imboccare due strade differenti per quanto riguarda la gestione del motore JavaScript dei rispettivi browser web.
Mentre Chrome punta sul compilatore JIT (just-in-time), gli utenti di Edge possono abilitare Super Duper Mode ovvero una modalità che disabilita il compilatore JIT per tutti i siti che l’utente non visita con regolarità e che possono risultare potenzialmente pericolosi.