2014-01-06 09:52:27 +0000 2014-01-06 09:52:27 +0000
49
49

Come ridurre l'uso della CPU di Google Chrome?

Ho iniziato a usare Google Chrome (aggiornato) su Windows 7 (tutto aggiornato) su un'installazione pulita che ho fatto qualche giorno fa e rispetto a Firefox sto vedendo enormi picchi di CPU (fino al 100% di utilizzo della CPU) quando si aprono schede vuote. Ho provato a disattivare funzioni come la previsione di rete e ecc. senza alcun effetto.

C'è un modo per ridurre la quantità di utilizzo della CPU da parte di Chrome?

Ecco una cosa strana che ho notato e che mi infastidisce: quando sto riproducendo video/audio di YouTube (sia la versione flash che quella HTML5) quando clicco sul pulsante più in alto per aprire alcune nuove finestre, il video/audio si blocca. Non provo nulla di simile quando uso Firefox. La cosa più strana è che non succede neanche quando apro le nuove pagine in un altro profilo di Chrome o in navigazione privata. Qualche idea sul perché questo accada? Queste pagine non dovrebbero essere tenute in processi separati? Perché la differenza tra aprirle in un altro profilo e nello stesso profilo?

Risposte (4)

49
49
49
2014-01-06 10:22:16 +0000

Per prima cosa, controlla che non si tratti di estensioni o plugin, o di qualche lavoratore in background che un sito usa (per aprire Chrome Task Manager, premi Shift+Esc o Menu → Altri strumenti → Task Manager).

Se non lo è, allora la mia ipotesi è che questo sia legato all'accelerazione hardware. Ma notate che non vedo questa causa da anni, sicuramente non da Windows 8.

Per prima cosa, disattiva l'accelerazione hardware in fondo alla pagina delle impostazioni principali (clicca su Mostra impostazioni avanzate… in fondo a chrome://settings, scorri fino alla fine, deseleziona Usa accelerazione hardware quando disponibile). Le versioni recenti di Chrome chiedono di riavviare, ma dalla mia esperienza questa opzione viene applicata immediatamente, almeno parzialmente.

Se i rallentamenti non sono andati via nemmeno dopo il riavvio di Chrome, apri chrome://flags (mettilo nella barra degli indirizzi di Chrome e premi Invio) e imposta quanto segue:

  • Disable accelerated 2D canvas - Disable
  • GPU rasterization - Disable
  • Hardware-accelerated video decode - Disable
  • Zero-copy rasterizer - Disable

(questo era per Chrome 53.0.2785. 89, altre opzioni potrebbero essere disponibili su sistemi più vecchi, dove Chrome non si aggiorna, per esempio:

  • Disabilita DirectWrite - Abilita
  • Enable one-copy rasteriser - Disabilita
  • Enable zero-copy rasteriser - Disabilita
  • Disable hardware-accelerated video decode - Abilita

)

poi cliccate su Riavvia ora in fondo alla finestra.

Se tutto andrà bene (ma un po’ più lento in generale, forse), puoi riportare le opzioni ai valori predefiniti una per una finché non ne trovi una che causa il problema.

(se non trovate un'opzione nella lista delle bandiere, saltatela. Forse cercate anche altre opzioni sulla GPU e sull'accelerazione hardware e assicuratevi che l'accelerazione HW e l'uso della GPU siano disabilitati. Chrome viene aggiornato abbastanza spesso, e i flag vengono aggiunti e rimossi in quasi ogni versione).

Risposte alle domande:

C'è un modo per ridurre la quantità di utilizzo della CPU da parte di Chrome?

se questi picchi sono causati dal motore nativo di Chrome (JavaScript o parser HTML per esempio), allora no. Ma più probabilmente si tratta di estensioni o videodriver buggati (le loro funzioni vengono utilizzate per l'accelerazione hardware).

quando clicco sul pulsante più in alto per aprire alcune nuove finestre fa sì che il video/audio ritardi. <…> Qualche idea sul perché questo accada?

solo ipotesi. O l'estensione o il plugin possono causare questo, o l'aggiunta di un altro livello alla finestra composita causa il lag del videodriver (composita - finestra con diversi livelli, e alcuni di essi resi dall'hardware, per esempio, dalla decodifica video hardware). Questo è il motivo per cui ho suggerito di disattivare l'accelerazione hardware e controllare.

Queste pagine non dovrebbero essere tenute in processi separati?

sono tenute in effetti, ma c'è un processo principale (per profilo) che emette informazioni alla finestra. Se questo processo si ferma per qualche motivo, gli aggiornamenti di window si fermeranno, e sembrerà che Chrome non risponda. Immagino che anche l'output del suono sia fatto tramite quel processo principale, ecco perché anche il suono è in ritardo.

Puoi controllare l'albero dei processi con Process Explorer .

Perché la differenza tra l'apertura in un altro profilo e nello stesso profilo?

Le impostazioni delle estensioni e dei plugin sono per profilo, e le estensioni sono disattivate di default in modalità Incognito. Questo è il motivo per cui può comportarsi diversamente con diversi profili (anche con un singolo processo principale di chrome).

2
2
2
2015-02-11 19:11:03 +0000

Resettare Google Chrome:

  1. Clicca sul menu di Chrome sulla barra degli strumenti e poi clicca su “Impostazioni”.

  2. Seleziona “Mostra impostazioni avanzate” dal fondo della pagina e poi fai clic su “Ripristina impostazioni del browser”.

  3. Clicca su “Reset” per riportare la configurazione del tuo browser ai valori predefiniti.

1
1
1
2015-03-16 01:36:25 +0000

Un trucco che ho imparato da alcuni siti:

  • Usa –-purge-memory-button nella riga di comando di Chrome e clicca su Purge memory nel task manager di Chrome e libererà la memoria (se possibile)

Ovviamente, basta disabilitare le estensioni e anche questo ti farà risparmiare memoria.

Inoltre, alcuni siti hanno menzionato FooTab , un'estensione che mette in pausa tutte le altre schede all'avvio finché non vengono caricate.

0
0
0
2014-05-17 22:45:34 +0000

Aprite chrome://flags e cercate delegated renderer e vedete se potete abilitare il flag per abilitare il renderer delegato, alias Übercompositor. Devi anche essere sicuro di avere abilitato il rendering accelerato poiché questo si basa sulla GPU. Puoi controllare questo sull'url chrome://gpu.

Ciò che questo fa è far sì che il processo di rendering salti la fase di compositing e invii comandi di disegno di alto livello al processo del browser, fondendolo con il proprio passaggio di compositing. Questo riduce il tasso di riempimento della GPU, ed è un ottimo modo per aiutare a ridurre la potenza utilizzata.