Un bug di Windows Defender può influire in modo significativo sulle prestazioni della CPU Intel,. Ma abbiamo la soluzione
Kevin Glynn, alias “Uncle Webb”, autore di software associato dietro a programmi di utilità popolari come ThrottleStop e RealTemp, ha sviluppato una nuova utilità denominata Counter Control. Questa, consente di monitorare e registrare i contatori delle prestazioni dei processori Intel Core dal 2008 (Core “Nehalem” ). Durante lo sviluppo di ThrottleStop, Kevin ha scoperto un bug affascinante con Windows Defender, il software di sicurezza integrato di Windows (qui per maggiori info). Questo, causa un impatto sulle prestazioni significativamente maggiore sul processore di quanto dovrebbe avere normalmente. Ovviamente un software di sicurezza è destinato ad avere un (piccolo) impatto sulle prestazioni durante la protezione in tempo reale, ma questo è molto più grande.
Perdita di prestazioni notevole con il bug di Windows Defender
Il primo segno che sta succedendo qualcosa è che HWiNFO riporterà una velocità di “clock effettivo” ridotta quando la CPU è completamente carica. Un problema molto più grande è che quando Defender è interessato dal bug, le prestazioni della tua macchina saranno notevolmente ridotte. Ad esempio, un Core i9-10850K in esecuzione a 5,00 GHz all-core perde 1000 punti Cinebench (o il 6%). Una tale perdita di prestazioni è stata segnalata dai proprietari di CPU Intel Core 8a, 9a, 10a e 11a generazione, sia desktop che mobili, sia su Windows 10 che su Windows 11. I processori AMD non sono interessati.
Il problema di fondo che costa così tante prestazioni è che Windows Defender inizierà a utilizzare in modo casuale tutti e sette i contatori delle prestazioni hardware forniti dai processori Intel Core, che include tre contatori di funzioni fisse. Ciascuno di questi contatori può essere programmato in una delle quattro modalità, per configurare il livello di privilegio che conta. Disabilitato, OS (squillo-0), Utente (squillo>0) e All-Ring. Poiché questi contatori sono una risorsa condivisa, è possibile che più programmi desiderino accedere a questi contatori contemporaneamente.
Il problema nel dettaglio
Utilità di sistema popolari come HWiNFO, OCCT, Core Temp e ThrottleStop, impostano tutti questi contatori su “modalità 3” o “Livelli di tutti i ring”. Poiché impostano tutti la stessa modalità, non ci sono problemi con più programmi che utilizzano lo stesso contatore. Windows Defender, d’altra parte, imposterà questi contatori sulla “modalità 2”, a quelli che sembrano intervalli casuali, per periodi di tempo casuali. Questo può accadere quando un computer si avvia per la prima volta o può accadere in qualsiasi momento dopo. Mentre Windows Defender è in esecuzione in background, può avviarsi e interrompersi o provare continuamente a modificare questi contatori in modalità 2 in qualsiasi momento. Giusto per chiarire, la perdita di prestazioni si verificherà anche senza alcun software di monitoraggio in esecuzione: Defender utilizzerà comunque un tempo CPU eccessivo.
Il problema non riguarda l’hardware Intel, poiché l’impostazione manuale degli stessi timer di Windows Defender non ha alcun impatto negativo sulle prestazioni. Inoltre, se questi contatori vengono sovrascritti manualmente, Defender lo rileva interrompe immediatamente qualsiasi operazione e le prestazioni tornano alla normalità, senza alcun effetto negativo sulla capacità di rilevare i virus in tempo reale.
Counter Control
Il nostro software Counter Control monitora e registra il registro “IA32_FIXED_CTR_CTRL” dei processori Intel Core, situato a MSR 0x38D. Questo registro fornisce l’accesso ai tre contatori di monitoraggio delle prestazioni a funzione fissa menzionati in precedenza. Counter Control informerà gli utenti se qualsiasi software utilizza i contatori a funzione fissa Intel e per quanto tempo sono stati utilizzati. I valori tipici riportati da Counter Control possono essere i seguenti.
- Non utilizzato – 0x000: i tre contatori di funzioni fisse vengono arrestati. Nessuno dei contatori è attualmente in uso.
- Defender – 0x222: tutti e tre i contatori di funzioni fisse sono programmati in modalità 2. Questo è il valore su cui Windows Defender imposta questi contatori quando li utilizza.
- Normale – 0x330: due contatori sono programmati in modalità 3. Un contatore è programmato in modalità 0 e non viene utilizzato. E ‘normale. La maggior parte dei programmi di monitoraggio che utilizzano questi contatori programmano il registro di controllo del contatore su questo valore.
- Avviso – 0x332: viene visualizzato quando due contatori vengono utilizzati normalmente dal software di monitoraggio mentre il terzo contatore è stato impostato sulla modalità 2, probabilmente da Windows Defender. Questo è un avvertimento che due diversi programmi potrebbero essere in conflitto per il controllo dei contatori condivisi. Potresti vedere il registro di controllo del contatore che cambia costantemente tra 0x222 e 0x332. Questo è ciò che vedrai durante l’esecuzione di HWiNFO se Windows Defender sta tentando di utilizzare i contatori della funzione IA32_FIXED contemporaneamente.
Se il tuo sistema sembra interessato, mostrando la lettura “Defender”, una soluzione rapida consiste nel fare clic sul pulsante “Ripristina contatori” in Controllo contatore. Premendo il pulsante, un timer verrà riprogrammato in modalità 3, che verrà rilevato da Defender, e Defender smetterà di fare le sue cose e ripristinerà le prestazioni. Si prega di verificare con i benchmark.
Soluzioni
Esistono due modi per mitigare permanentemente questa perdita di prestazioni. È possibile disabilitare il monitoraggio in tempo reale di Windows Defender Ciò però è altamente sconsigliato a causa delle implicazioni sulla sicurezza. Oppure potresti usare l’ultima versione 9.5 di ThrottleStop, che ha una funzione nella finestra “Opzioni”, chiamata “Windows Defender Boost”. Selezionando questa opzione si garantiscono le massime prestazioni e un monitoraggio accurato del Core Effective Clock in tutte le applicazioni. Indipendentemente dal fatto che la protezione in tempo reale di Windows Defender sia abilitata o meno. Per raggiungere tale obiettivo, ThrottleStop attiva immediatamente uno dei timer programmabili. Quando Windows Defender rileva che alcuni software utente stanno tentando di usare uno dei contatori programmabili, interrompe l’utilizzo di tutti i contatori e li lascia soli finché il contatore rimane abilitato. Ciò riporta le prestazioni alla normalità.
Il pulsante “Reset” in Counter Control fa lo stesso e offre alle persone un modo per attivare solo questo meccanismo, senza dover avviare ThrottleStop. Giusto per chiarire, Windows Defender continuerà a funzionare correttamente. Può ancora rilevare e notificare agli utenti eventuali virus. Se avviato una volta, con l’opzione “Windows Defender Boost”, ThrottleStop farà funzionare il timer in modalità 3, anche quando è chiuso. Ciò significa che puoi avviare ThrottleStop una volta all’avvio, chiuderlo subito dopo e il tuo sistema sarà protetto dai problemi di prestazioni di Defender. Se “Windows Defender Boost” non è selezionato, il contatore verrà inizialmente cancellato. Ciò interrompe l’algoritmo di Window Defender. Ma ThrottleStop non tenterà più di mantenere in esecuzione un contatore durante il suo utilizzo e non manterrà quel contatore in esecuzione dopo l’uscita da ThrottleStop.
E voi? cosa ne pensate di questo bug di Windows Defender ? diteci la vostra qui sotto nei commenti e restate connessi su tuttoteK, per le ultime novità dal mondo della tecnologia (e non solo!).
Lascia un commento