Processori e tecnologie Intel per il 2008

Intel anticipa quelle che saranno le proprie future architetture di processore attese al debutto a partire dalla seconda metà del 2008, oltre ad alcune anticipazioni su Lerrabee. Il ruolo principale è svolto dalle cpu Nehalem, che implementano per la prima volta memory controller integrato e un'interfaccia di comunicazione point to point, chiamata QuickPath.
di Andrea Bai , Paolo Corsini pubblicato il 17 Marzo 2008 nel canale ProcessoriIntel
Nehalem
Nehalem è il nome in codice con il quale Intel indica la nuova generazione di microarchitettura a 45 nanometri che andrà a costituire la base dei processori che verranno immessi sul mercato a partire dal terzo trimestre dell'anno. Si tratta di una nuova architettura estremamente scalabile grazie ad un elevato grado di modularità: Nehalem è stato progettato in questo modo per poter venire incontro alle differenti esigenze del mercato, permettendo ad Intel di realizzare soluzioni specifiche per i diversi scenari.
Come abbiamo avuto modo di illustrare in passato, Intel segue un approccio molto schematico per quanto concerne la strategia di rinnovamento dei propri processori. Questo approccio è conosciuto con il nome di "tick-tock": l'adozione di un nuovo processo produttivo (la fase di "tick") avviene con una architettura ormai già collaudata mentre il passaggio ad una nuova architettura (la fase di "tock") avviene, viceversa, quando la produzione con un determinato processo è ormai avviata con ottimi risultati e rese elevate.
Ogni ciclo ha la durata di due anni: negli anni dispari viene affrontata la transizione verso un nuovo processo produttivo, mentre negli anni pari si da vita alla nuova architettura. Siamo in un anno pari: Nehalem rappresenta la fase di "tock", ovvero il debutto di una microarchitettura completamente nuova prodotta utilizzando il processo Hi-K metal a 45 nanometri, introdotto lo scorso anno con i processori basati su core Penryn.
Per sviluppare la nuova architettura Intel ha voluto porsi come obiettivo l'ottimizzazione dell'impiego della potenza a disposizione e una più efficiente gestione dei cicli di clock, per poter ottenere prestazioni maggiori a parità di risorse energetiche.
Partendo da questo presupposto Nehalem manterrà gli elementi base dell'architettura Core 2, utilizzata nei processori Core 2 Duo e Core 2 Quad attualmente in commercio. Le novità apportate da Intel saranno maggiormente focalizzate sull'ottimizzazione dei singoli core e sull'architettura complessiva per migliorare la sinergia operazionale tra i diversi core del processore a tutto vantaggio delle applicazioni, siano esse single-threaed, siano esse multi-threaded.
wafer con Die di processori Nehalem
Lo sviluppo di Nehealem è stato condotto tenendo in estrema considerazione il principio dell'efficienza energetica: ogni proposta di miglioramento architetturale è stata attentamente valutata e scartata nel caso in cui una nuova funzionalità non sia stata in grado di raggiungere un miglioramento di potenza computazionale nell'ordine dell'1% con un consumo energetico minore del 3%.
Lo sviluppo si è concentrato inoltre sull'ottimizzazione dell'esecuzione parallela, con l'implementazione di un più capace gestore di istruzioni dedicato alle istruzioni indipendenti, quelle cioè slegate dal risultato di altre istruzioni e che proprio per questa caratteristica possono essere eseguite parallelamente ad altre istruzioni, incrementando così la velocità di esecuzione complessiva.
Nehalem comprende inoltre una nuova serie di algoritmi:
- Sincronizzazione più rapida delle primitive: con la progressiva diffusione di software multi-threaded si fa via via più pressante la necessità di un adeguato sistema di sincronizzazione dei thread. Nehalem migliora la sincronizzazione delle istruzioni in linguaggio macchina per apportare un boost prestazionale al software multi-threaded già esistente e per meglio prepararsi a quello prossimo venturo;
- Gestione dei Branch Misprediction velocizzata: una tecnica largamente utilizzata per il miglioramento delle prestazioni consiste nel cosiddetto "Branch Prediction Mechanism" ovvero nella predizione degli esiti di un'operazione che prevede un salto condizionato, in modo tale da accelerare l'esecuzione del codice. Nel caso in cui la previsione dovesse risultare errata, l'architettura di Nehalem consente un degrado prestazionale contenuto e inferiore rispetto ai processori di precedente generazione;
- Hardware prefetch migliorato: Nehalem raccoglie l'eredità lasciata dalla precedente architettura core in merito alle operazioni di prefetch (ovvero il recupero di dati ed istruzioni in anticipo rispetto al momento del loro effettivo impiego) e ne migliora l'efficienza, permettendo di conseguire anche in questo caso minori latenze di accesso.
Nehalem prevede inoltre un sistema di Branch Prediction più avanzato che prevede la presenza di un nuovo BTB (branch target buffer) di secondo livello, molto utile nel caso di applicazioni con codice particolarmente complesso, come ad esempio i software di interrogazione e gestione di database. Questo componente si occupa di minimizzare il calo prestazionale delle diramazioni condizionate nei processori con architettura a pipeline, prevedendo il percorso della diramazione e stoccando nella cache le informazioni da essa utilizzate.