Avevamo già notato come il benchmark di WinRAR, ma anche l'applicazione stessa, non beneficiasse della tecnologia Hyper Threading di Intel. Avevamo infatti rilevato valori identici sulla CPU 2600K, sia con 8 core logici che con 4 core logici.
Ora cercheremo di fare luce sui problemi e i segreti del core parking di Windows Seven.
Pubblicità
Abbiamo segnalato in precedenza come con una semplice modifica al registro di Windows è possibile disabilitare il core parking in Windows Seven ed ottenere una miglioria nelle prestazioni di WinRaR.
La redazione di Deep in It ha scoperto come abilitare un controllo più semplice del core parking in Windows seven.
XtremeHardware ha analizzato a fondo i risvolti di tale scoperta, verificando le modalità con cui questo trucco funziona e le modifiche prestazionali che queste impostazioni comportano.
Abbiamo infine cercato di capire il perché di questo "malfunzionamento" del core parking di Windows Seven con test di affinità mirati.
Il Core Parking
Windows Vista e Windows Seven implementano una nuova tecnica di risparmio energetico: il core parking.
Tale tecnica mette in stato di risparmio energetico profondo, qualora supportato dalla CPU, i core non attualmente necessari alle elaborazioni in corso.
Poiché mandare in stato di risparmio energetico e risvegliare un core è un processo abbastanza lento, il sistema operativo deve provare a indovinare se un dato core servirà in un prossimo futuro o meno.
Come tutte le previsioni, essa può essere sbagliata.
Questo è quello che probabilmente succede con WinRaR in Windows Seven con il core parking abilitato e una CPU Intel con Hyper Threading.
Abbiamo verificato che con CPU senza Hyper Threading o con Hyper Threading disabilitato, il malfunzionamento non si verifica.
Esso non si verifica neanche con CPU AMD Bulldozer, che potrebbero essere affette da un problema simile a causa della architettura a moduli. L'ipotesi che abbiamo fatto è che Windows Seven non usi ancora il core parking su CPU bulldozer. Investigheremo quanto prima questo problema in un prossimo articolo.
Controllare il Core Parking
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\0cc5b647-c1df-4637-891a-dec35c318583
Tale valore esprime la massima percentuale (in esadecimale, dove 64 si traduce in 100 in decimale) di CPU che possono essere "parcheggiate".
Impostando tale valore a zero si disabilita di fatto il core parking.
Abbiamo verificato che è necessario un riavvio del sistema affinché le modifiche abbiano effetto. Ciò probabilmente è dovuto al fatto che tale parametro è impostato al boot del kernel e non è più possibile modificarlo.
Un secondo modo, più pratico, è di abilitare una impostazione avanzata di risparmio energetico del processore, per controllare il core parking. Impostando a zero la sottochiave Attributes nella chiave di registro
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\0cc5b647-c1df-4637-891a-dec35c318583
si abilita nel pannello tale impostazione. Abbiamo verificato che la modifica di tale valore è immediata, ossia non richiede un riavvio e funziona in tempo reale: non è neanche necessario chiudere e riaprire il programma in esecuzione. Ciò ci fa capire che questa impostazione agisce a livello di sistema. Un'altra cosa importante da notare e che tale impostazione è attiva solo con il core parking disabilitato, come descritto sopra (e dopo un riavvio). Con il core parking abilitato, tale impostazione non ha stranamente effetto.
Un'ultima cosa da notare è un errore nella didascalia, almeno in Windows versione italiana. Essa riporta "Numero minimo arresto core prestazioni del processore". In realtà l'impostazione 0% abilita completamente il core parking e l'impostazione 100% la disabilita completamente. Sono ovviamente possibili i valori intermedi.
Questi sono tre esempi della impostazione in azione.
Disabilitando il core parking, le prestazioni con le CPU Intel Sandy Bridge salgono notevolmente. Sotto potete osservare i grafici effettuati sia con la versione stabile di WinRAR (4.01), sia utilizzando l'ultima beta (4.10). Abbiamo testato la corretta applicazione di questa patch utilizzando i seguenti processori, tutti dotati di tecnologia Hyper Threading:
- Intel i7 860 skt 1156 4c/8t
- Intel i7 875k skt 1156 4c/8t
- Intel i7 2600k skt 1155 4c/8t
- Intel i7 3960X skt 2011 6c/12t
I risultati dopo aver disabilitato il core parking sono stati davvero entusiasmanti, arrivando ad un miglioramento del 40%.
Le CPU AMD, compreso Bulldozer, e quelle Intel sprovviste di tecnologia Hyper Threading non hanno visto alcun miglioramento.
- Indietro
- Avanti >>