Si dice che la CPU è occupata al 100% quando tutte le risorse di elaborazione disponibili sul processore risultano in uso. In questi frangenti, il processore è impegnato nell’esecuzione di varie attività e mal gestisce ulteriori carichi di lavoro.
Quando la CPU è al 100%, essa sta eseguendo istruzioni in ogni ciclo di clock disponibile. A loro volta, le istruzioni possono provenire da vari processi e thread. Se la CPU è formata da più core, come accade ormai nel caso di tutte quelle ormai sul mercato da circa due decenni, il 100% di utilizza sta a significare che tutti i core risultano completamente occupati.
Tenere la CPU al 100% può ridurne le aspettative di vita?
Mettiamo subito in evidenza che l’uso della CPU al 100% non è di per sé un fattore che riduce la vita del processore. Sulla carta, una CPU è fatta per poter lavorare addirittura per mesi o anni al 100%. Il nemico in agguato, tuttavia, è la temperatura.
Se il sistema di raffreddamento (ventole, dissipatori, pasta termica,…) è efficiente, la CPU può operare al massimo delle prestazioni per periodi lunghissimi, senza rischiare il surriscaldamento.
Una soluzione adeguata per la dissipazione del calore che mantenga la temperatura entro limiti sicuri, può far sì che la CPU possa teoricamente operare al 100% a tempo indeterminato. Tuttavia, nel mondo reale, il surriscaldamento può diventare un serio problema se non correttamente gestito.
In generale, i processori in modalità idle ovvero che non svolgono elaborazioni particolari e si trovano in una sorta di stato di riposo manifestano temperature di lavoro comprese tra 40 e 55 °C. Come temperatura sicura per i moderni chip, comunque, i produttori indicano generalmente i 95 °C. Si tratta di una soglia limite che non dovrebbe essere superata (fare comunque riferimento alle specifiche tecniche del proprio modello di processore).
In tanti osservano che nei data center le CPU si trovano a lavorare continuamente al 100%. Questo è vero in molti casi ma le soluzioni per la dissipazione del calore adottate in ambito professionale sono spesso molto più efficaci rispetto a quelle adottate nel mercato mainstream, permettendo di mantenere le temperatura all’interno di un intervallo sicuro. Anche in presenza di carichi di lavoro impegnativi.
Il thermal throttling: cos’è
Per prevenire situazioni di surriscaldamento, i moderni chip integrano meccanismi di thermal throttling. Si tratta di una tecnica che provvede a ridurre automaticamente la frequenza operativa della CPU allorquando fossero raggiunte temperature critiche.
All’interno della CPU sono collocati dei sensori termici che monitorano costantemente la temperatura del die: posizionati in punti strategici, consentono di diagnosticare situazioni di potenziale pericolo.
Il processore ha delle soglie di temperatura predefinite (Tj Max o Temperature Junction Maximum) definite dai produttori e variano tra i diversi modelli di CPU. Quando la temperatura della CPU si avvicina o supera queste soglie, il thermal throttling entra in azione.
Il raggiungimento della soglia critica comporta una riduzione della frequenza operativo che ha come conseguenza l’abbattimento del carico di lavoro sul processore e la quantità di calore generata.
Oltre a ridurre la frequenza, la CPU può anche abbassare la tensione di alimentazione (V) per diminuire ulteriormente il consumo di energia e il calore prodotto. Questa tecnica è spesso chiamata “Dynamic Voltage and Frequency Scaling” (DVFS).
Non appena, a seguito di un costante monitoraggio, la temperatura si riportasse al di sotto della soglia criticale, la CPU può aumentare nuovamente la frequenza e la tensione fino ai livelli normali. Se la temperatura rimane alta, il throttling continua fino a quando la temperatura non rientra nei limiti sicuri.
Effetti del thermal throttling
Ovviamente, quando si attiva il thermal throttling, lo scotto si paga in termini di prestazioni. A thermal throttling abilitato le performance della CPU possono ridursi significativamente, il che può influire sulla velocità e sulla reattività del sistema nel suo complesso.
Per accertare quando è attivo il thermal throttling, è possibile utilizzare vari strumenti software. Si possono ad esempio utilizzare utilità specializzata come Intel Extreme Tuning Utility (XTU) e AMD Ryzen Master. Entrambe, dedicate in particolare a chi fa overclocking, consentono di verificare in tempo reale le temperature, le frequenze di clock e gli eventi di throttling.
Banalmente, però, si può premere CTRL+MAIUSC+ESC
per accedere al Task Manager di Windows quindi cliccare sulla scheda Prestazioni e infine su CPU. In presenza di un carico di lavoro rilevante, se la frequenza si mantiene più bassa rispetto al normale significa che il thermal throttling è attivo.
Lo stesso approccio si può utilizzare con i programmi gratuiti HWMonitor e Core Temp: tutti e due aiutano a osservare le metriche del processore. Una frequenza di lavoro che si mantiene bassa in presenza di un workload rilevante, è spia del thermal throttling attivo.
CPU al 100%: quando è ammissibile
Se la CPU lavora al 100% per periodi di tempo più o meno lunghi, quindi, di solito non ci sono problemi. Soprattutto se le temperature non si avvicinano alle soglie critiche definite dal produttore.
In ogni caso, il thermal throttling si occupa di gestire le situazioni più impegnative e, in situazioni di emergenza, il computer può essere spento automaticamente quando la CPU raggiungesse valori di temperatura troppo elevati.
La maggior parte delle schede madri moderne include funzionalità di protezione termica a livello di BIOS/UEFI. Quando la temperatura della CPU supera una certa soglia critica, il BIOS/UEFI può ordinare un immediato spegnimento del sistema per evitare danni.
Alcuni processori hanno meccanismi di protezione integrati nel firmware che monitorano costantemente la temperatura. Al rilevamento di una temperatura pericolosamente alta, la CPU può inviare un segnale di spegnimento. Lo stesso sistema operativo può intervenire di sua sponte interfacciandosi con i sensori hardware disponibili.
Va messo sul tavolo anche un altro aspetto degno di nota: se si modificano a salire le tensioni, alla ricerca di prestazioni migliori, o comunque l’alimentatore in uso non fosse ottimale, è necessario muoversi con maggiore cautela.
Con la CPU al 100% il sistema è meno reattivo
Quando una CPU lavora al 100%, il sistema può diventare molto più lento e meno reattivo per diversi motivi legati alla gestione delle risorse e al funzionamento interno del processore.
Come abbiamo osservato in apertura, quando la CPU è al 100%, tutte le sue risorse di elaborazione sono occupate nell’eseguire istruzioni e processi. Questo significa che non ci sono risorse disponibili per gestire ulteriori richieste, come l’apertura di nuove applicazioni o la gestione di altre operazioni di sistema.
Il sistema operativo assegna priorità alle operazioni in base alla loro importanza. Quando la CPU è completamente occupata, i processi a bassa priorità potrebbero ricevere meno risorse o essere messi in coda, rallentando le risposte del sistema.
I processi e le applicazioni devono quindi attendere che la CPU liberi risorse per eseguire nuove istruzioni. Se più processi richiedono l’accesso alla CPU contemporaneamente, la contesa per le risorse aumenta, rallentando l’esecuzione complessiva e rendendo il sistema meno scattante.
Evitare di avere costantemente un processore al 100% è importante
Posto che in condizioni ottimali mantenere una CPU al 100% per lunghi periodi di solito non è causa di danni, questa condizione è fortemente impattante in termini di reattività del sistema e, in generale, di performance. Ovvio che se la macchina è impegnata nel concludere un’attività pesante nel più breve tempo possibile (elaborazione di un video, rendering 3D, cifratura o decodifica dei dati,…) è normale che la CPU si mantenga al 100% per un certo lasso di tempo.
Tuttavia, non è normale lasciare che resti costantemente al 100%. Le CPU moderne utilizzano la cache per ridurre il tempo di accesso, che risulta più elevato nel caso di informazioni conservate nella memoria RAM. Con la CPU al 100% di utilizzo, la cache potrebbe diventare un collo di bottiglia, specialmente se i dati richiesti non sono presenti nella cache e devono essere recuperati dalla memoria principale, molto più lenta.
In un altro articolo abbiamo visto che il Task Manager di Windows è il migliore alleato per scoprire quali attività occupano al 100% la CPU. Un sistema con la CPU stabilmente al 100% rappresenta un problema non tanto perché ciò possa determinare un problema hardware quanto perché esso diventa quasi inutilizzabile.
Abbiamo detto, infatti, che se la CPU è sovraccarica tale situazione può influenzare negativamente la velocità di accesso alla memoria e l’efficienza delle operazioni di I/O. Ad esempio, se le applicazioni in esecuzione richiedessero un’elevata attività del disco, la CPU al 100% può rallentare anche le operazioni di lettura e scrittura sulle unità di memorizzazione, aumentando ulteriormente i tempi di risposta del sistema.
Come abbiamo visto nell’articolo sul funzionamento del processore, la CPU si occupa anche di gestire gli interrupt hardware: quando il processore è “preso per il collo”, la stessa gestione degli interrupt diviene meno efficiente, rallentando ulteriormente la risposta del sistema.
Credit immagine in apertura: iStock.com – Gorodenkoff