Supporto alle istruzioni Intel AVX nei futuri processori AMD
Istruzioni AVX supportate anche dai processori AMD? Sembra di si, stando ad alcune dichiarazioni di Dave Christie Senior Architect e Fellow AMD
di Alessandro Bordin pubblicata il 07 Maggio 2009, alle 14:05 nel canale ProcessoriIntelAMD
Nella sezione del sito AMD dedicata ai blog degli sviluppatori, ha fatto la comparsa un interessante intervento di Dave Christie, Senior Architect e Fellow AMD. L'argomento riguarda le istruzioni che saranno supportate dai futuri processori AMD (che ipotizziamo essere quelli indicati dal nome in codice Bulldozer), fino ad oggi individuabili nelle SSE5 già annunciate nell'agosto 2007.
Le novità comunicate da Dave Christie sono importanti, in quanto introducono un colpo di scena: le future CPU AMD supporteranno le stesse istruzioni AVX annunciate da Intel per la prossima generazione di processori realizzate con architettura Sandy Bridge, processo produttivo a 32nm. L'acronimo AVX sta per Advanced Vector Extension, un set di istruzioni SIMD, Single Instruction Multiple Data, cui spetterà il compito di introdurre diverse migliorie.
Prevista ad esempio l'introduzione di vettori a 256 bit, che
dovrebbero garantire un raddoppio dei calcoli in virgola mobile; il limite di
istruzioni di massimo 2 operandi verrà esteso fino a 3 o 4 operandi, insieme ad
altre migliorie che non andremo ad approfondire in questa sede. I benefici a
livello pratico dovrebbero tradursi in miglioramenti prestazionali in ambito
multimediale e di modellazione 3D, così come dovrebbe giovarne anche la
scalabilità in termini di core fisici e logici presenti nel processore,
sfruttabili in maniera più efficiente.
La motivazione alla base della scelta di AMD sta nel fatto che molte istruzioni
presenti nel set AVX sono quasi del tutto sovrapponibili ad altre del set SSE5.
Adottare set differenti per fare cose praticamente identiche si tradurrebbe in
una complicazione per gli sviluppatori, con potenziali ripercussioni sullo
sviluppo di software in grado di sfruttare i benefici delle nuove CPU. Non si
tratta in ogni caso di un abbandono totale delle scelte fatte in precedenza,
poiché le istruzioni inizialmente pensate per alcune delle CPU AMD del futuro
che non trovano corrispondenti nel set AVX saranno comunque garantite. I più
importanti esempi sono le istruzioni XOP, CVT16
e FMA4.
Non viene fatta menzione precisa su quali CPU potranno godere delle nuove istruzioni, ma sono in molti a credere che si stia parlando di quelle che vengono indicate dal nome in codice Bulldozer, come accennato all'inizio della news. La presentazione di queste CPU, realizzate con processo produttivo a 32nm, è attesa per l'anno 2011, mentre il concorrente Intel dovrebbe presentare le prime CPU basate su architettura Sandy Bridge nel corso del 2010.
20 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - infoSarà una bella batosta (anche se i software compatibili escono e sono effettivamente usati sempre parecchio dopo, di solito...).
Io al posto di AMD chiederei di controllare un pò questa cosa ai vari enti antitrust... in fin dei conti le nuove istruzioni chi le decide? Intel.
Se ne vuoi la modifica, una implementazione, un miglioramento che fai? Aspetti che Intel le vada di farlo, sempre che le venga voglia o se gli dai abbastanza soldi.
E se te le fai da per te e sono magari una genialata chi le usa? Nessuno, non sarebbero compatibili con niente.
Bah...
Sarà una bella batosta (anche se i software compatibili escono e sono effettivamente usati sempre parecchio dopo, di solito...).
Io al posto di AMD chiederei di controllare un pò questa cosa ai vari enti antitrust... in fin dei conti le nuove istruzioni chi le decide? Intel.
Se ne vuoi la modifica, una implementazione, un miglioramento che fai? Aspetti che Intel le vada di farlo, sempre che le venga voglia o se gli dai abbastanza soldi.
E se te le fai da per te e sono magari una genialata chi le usa? Nessuno, non sarebbero compatibili con niente.
Bah...
scusa se le inventa la intel è ovvio che sono sue e ne fa quel che vuole..è già buona che gliele fa usare..altrimenti x tutte le cose uno aspetta che le produca qualcun altro x poi prenderle usarle e migliorarle..
Ad AMD nessuno vieta di fare istruzioni sue, come ha fatto del resto con le 3Dnow! o come farà con le XOP, CVT16 e FMA4...ciò nonostante è bene ke supporti anche istruzioni intel per essere più appetibile sul mercato...
intel non è che inventa...
intel è la proprietaria dell'architettura x86 che concede in licenza, ed essendo le istruzioni, una componente fondamentale dell'architettura, vengono concesse in licenza con queste ultime...
non è che intel sta ogni giorno inventando qualcosa...
e nel momento in cui negli anni 90 aveva raggiunto una situazione praticamente di monopolio (accordi con ibm, microsoft etc).... si trova in una posizione dominante, e DEVE concedere le licenze (con l'anno di ritardo etc)
se amd facesse istruzioni sue.... la compatibilita' andrebbe a farsi benedire...quindi al massimo puo' "aggiungere" qualcosa di suo (come le 3dnow) ma deve cmq supportare gli "standard de facto" imposti da intel, che volente o nolente, è quella che crea gli standard per la piattaforma x86
revenge...
inoltre mi spieghi il vantaggio commerciale di un anno di set di istruzioni, che magari per essere sfruttate in un software, ci vuole almeno un annetto di lavori su quel software?
In pratica i vantaggi di AVX è che riorganizza gli op-code in modo da usare meno bytes e si tiene ampio margine per l'espandibilità futura e poi l'estensione dei registri a 256 bit. SSE5 aveva molte istruzioni, ma non aveva l'estensione dei registri a 256 bit che consente un raddoppio della capacità di calcolo. Se il core buldozer è già stato finalizzato, probabilmente le istruzioni a 256 bit saranno spezzate in tronchi da 128 bit e dovremo aspettare la successiva iterazione (o la fusione CPU-GPU) per avere l'esecuzione in un singolo passo.
I vantaggi delle XOP è che supportano il tipo float a 16 bit (utilizzato sempre più negli shader delle GPU e quindi indicativo del fatto che AMD si apprestava a integrare CPU e GPU) e con 256 bit anzichè 128 ha potenzialmente una doppia capacità. Poi le XOP sono operazioni che AVX non ha e in più AVX è limitato, per gli interi, alle sole operazioni a 128 bit. Invece AMD nelle istruzioni XOP, usa tutti e 256 bit anche nelle operazioni su interi. Questo sempre grazie all'elevato parallelismo che si potrà ottenere con l'integrazione CPU/GPU.
In breve, queste estensioni a 256 bit andranno a nozze con la fusione CPU/GPU. Penso che a questo punto si avranno CPU low end, fatte da un core simile al k10 e che esegue più lentamente le istruzioni AVX e sorelle, poi avremo CPU medie e high end, che hanno anche delle pipeline GPU all'interno e che potranno eseguire una o più istruzioni AVX per ciclo di clock, magari utilizzando le pipeline GPU in concorrenza con gli shader...
Una bella prospettiva...
C'è da dire poi che AMD non si limiterà a supportare la AVX, ma a quanto pare porterà avanti parte delle estensioni inizialmente pensate per il set SSE5. Un pò come gli AthlonXP che supportavano sia 3DNow! che SSE.
C'è da dire poi che AMD non si limiterà a supportare la AVX, ma a quanto pare porterà avanti parte delle estensioni inizialmente pensate per il set SSE5. Un pò come gli AthlonXP che supportavano sia 3DNow! che SSE.
Con un po' di microcodice si potrebbe fare benissimo, spezzando le istruzioni a 256 in 2 a 128 bit. La soluzione più immediata, che non richiede nemmeno la riprogettazione del decoder (credo) è fare tutte le istruzioni in microcodice e allargare i registri. Ovviamente è anche la più lenta. Mettendo mano al decoder, le istruzioni più frequenti possono essere fatte single o double directPath... Ma ci vuole più tempo...
Chiaro che per una implementazione ottimale si devono raddoppiare tutti i bus all'interno e verso la cache...
Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".