Architettura Piledriver: miglioramento di Bulldozer
Le fondamenta di questa architettura x86 di AMD le abbiamo coperte in modo approfondito nella recensione dell'FX 8150 (Recensione AMD FX-8150: Bulldozer delude, la strada è ancora lunga). Tutto ciò che trovate in quello articolo è presente anche nell'aggiornamento Piledriver.
Clicca per ingrandire
Sappiamo però che gli ingegneri di AMD hanno imparato alcune cose nella trasposizione del contetto di Bulldozer dalla teoria al silicio e che la tecnologia produttiva è evoluta nel corso dell'anno passato, anche se l'azienda continua a usare i 32 nanometri per produrre le CPU Vishera. Non dovrebbe quindi sorprendere che l'attuale riformulazione sia il risultato di diversi cambiamenti su cui l'azienda sapeva, da tempo, di dover migliorare.
Miglioramenti al front-end
Subito dopo l'introduzione dell'architettura Bulldozer è stata indicata la branch prediction come uno dei possibili punti deboli. Il concetto dei moduli coinvolge determinare risorse condivise che alimentano due thread e gli ingegneri hanno cercato di minimizzare i colli di bottiglia nel front-end implementando una "prediction queue" per thread a sostegno di un brand target buffer L1 di 512 entry e un L2 di 5000-entry. Per Piledriver l'azienda afferma che la precisione del proprio "predictor" è migliorata.
Clicca per ingrandire
Piledriver aggiunge il supporto per un paio di estensioni ISA di cui abbiamo già parlato nel nostro articolo sulla APU Trinity. Le Fused multiply-add sono state introdotte un anno fa in Bulldozer. Quella specifica versione è stata chiamata FMA4 e consentiva a un'istruzione di avere quattro operandi. Intel ha intenzione di supportare un set d'istruzioni FMA3 più semplice con tre operandi nella sua futura architettura Haswell, quindi AMD gioca d'anticipo.
L'altra estensione, F16C, offre il supporto per la conversione fino a quattro valori half-precision in virgola mobile alla volta. L'architettura Ivy Bridge di Intel lo include già, quindi l'implementazione su Piledriver porta semplicemente AMD alla pari. Non che Bulldozer soffrisse senza FMA3/F16C; il supporto al compilatore è stato aggiunto solo in Visual Studio 2012.