Intel Nehalem: uno sguardo alla nuova architettura

Intel Nehalem: uno sguardo alla nuova architettura

In attesa del debutto delle prime cpu Intel Core i7 analizziamo l'architettura della prossima generazione di processori Intel nota con il nome in codice di Nehalem. Memory controller integrato, bus QPI, ritorno di Hyper-Threading e varie innovazioni caratterizzano queste nuove architetture.

di pubblicato il nel canale Processori
Intel
 

Power Management

Intel ha implementato una gestione del risparmio energetico particolarmente sofisticata con le cpu Nehalem, incentrata su una ciruciteria integrata nel processore chiamata PCU, Power Control Unit. Questo componente, formato da circa 1 milione di transistor, integra al proprio interno un firmware e opera monitorando in tempo reale le temperature di funzionamento, la corrente e la potenza dei vari core del processore, intervenendo per ottimizzare il consumo complessivo e per abilitare la funzionalità Turbo Memory, analizzata nella pagina seguente.

pcu.jpg (50598 bytes)

Dal grafico si nota come ogni Core sia dotato di un proprio PLL: questo implica che la frequenza di clock possa essere selezionata in modo indipendente per ciascuno di essi, in modo quindi simile a quanto implementato da AMD con le cpu Phenom. Al pari delle soluzioni AMD, tutti i core operano allo stesso voltaggio di alimentazione: la circuiteria implementata quindi permette di variare la frequenza di clock indipendentemente dal carico di lavoro degli altri processori ma non di selezionare voltaggi inferiori per quei core che sono in un determinato istante in modalità di risparmio energetico mentre altri sono impegnati in elaborazioni.

Per quale motivo Intel non ha implementato dei voltage regulator indipendenti per ciascun Core, così da minimizzare il consumo? Le spiegazioni sono di due tipi: da un lato il costo, unito alla complessità, di un design di questo tipo. Dall'altro le elevate latenze di uscita dagli stadi di più elevato risparmio energetico che si vengono a introdurre nel momento in cui oltre alla frequenza di clock viene gestito in modo indipendente per ogni core anche il voltaggio di alimentazione.

power_1.jpg (26205 bytes)

Nei processori Core 2 Duo per sistemi notebook la modalità di risparmio energetico prevede la possibilità, per un processore, di ridurre la propria frequenza di clock nel momento in cui viene mandato in idle, lasciando l'altro core ad operare regolarmente in modalità C0. Il consumo complessivo si riduce, ma non è possibile intervenire a variare il voltaggio di alimentazione prima che anche il core attivo venga portato in modalità idle in quanto ha completato le operazioni con le quali era impegnato. Una riduzione sensibile del consumo complessivo dei core avviene solo quando si sposta verso la fase C6, con la quale il voltaggio di alimentazione viene ridotto al minimo; nel caso in cui ad uno dei due Core venisse richiesto di elaborare, uscendo dallo stato C6, si avrebbe un incremento nel voltaggio di alimentazione che incrementerebbe il consumo anche dell'altro core rimasto in idle.

power_2.jpg (50223 bytes)

Con le cpu Nehalem l'approccio implementato è differente: ogni core può passare allo stato C6 in modo indipendente pur avendo un power plane condiviso tra tutti i core. Non solo: nel momento in cui il sistema operativo esegue l'istruzione MWAIT(C6) per un core che ha terminato di elaborare questo mette in atto le funzionalità di risparmio energetico indipendentemente da quanto stiano facendo gli altri core, ma a differenza di quanto avviene con le cpu Core 2 questo implica anche che il voltaggio di quello specifico core venga portato a 0, esattamente come se fosse presente un power plane specifico per ogni core.

Come noto, Intel produce al proprio interno le CPU che progetta; è frutto di una sinergia interna all'azienda tra produzione e sviluppo che è stato implementato nelle cpu Nehalem un particolare materiale, che opera come power gate tra la fonte del voltaggio inviata ad un core e lo stesso core. Grazie all'utilizzo di questo particolare materiale, nonostante sia presente un unico voltaggio di alimentazione condiviso tra i core, nel momento in cui un core dovesse passare ad una delle modalità di risparmio energetico entrando nello stato C6 (deep sleep state) questo passerebbe immediatamente ad uno stato di spegnimento pressoché completo, con una conseguente riduzione del consumo ai minimi termini.

La conseguenza diretta è un funzionamento di ciascun core, in termini di requisiti di alimentazione, equiparabile a quella di un'architettura con power plane indipendenti pur di fatto essendocene uno solo condiviso tra i core. I benefici in termini di contenimento del consumo in idle vanno quindi di pari passo con la necessità di non incrementare la complessità costruttiva delle schede madri. Il monitoraggio dello status di alimentazione di ciascun core è delegato al PCU integrato nel processore; questo permette di evitare quelle condizioni nelle quali il sistema operativo manda in modalità di basso consumo uno dei Core, salvo poi riportarlo ad uno status P0 in breve tempo per eseguire un'altra richiesta.

I più evidenti benefici di questa nuova tecnologia di risparmio energetico saranno importanti per le versioni di processore Nehalem per sistemi notebook, attese al debutto nel corso del 2009 con la prossima generazione di piattaforme Centrino.

 
^