28-07-2009, 21:30
|
#11741
|
Senior Member
Iscritto dal: Nov 2003
Messaggi: 24166
|
Architettura Bulldozer: Le prime indiscrezioni (28.09.2009)
Un grazie speciale a bjt2 e Ren:
Quote:
Originariamente inviato da Ren
Cominciano ad uscire alcune informazioni sulla nuova architettura Bulldozer. Pare che la L1 istruction e le unità di decoding saranno condivise da due core,
ognuno con proprie ALU, registri e cache dati. Si passerebbe da un approccio Multi-Core ad uno Clustered.
Assomiglia in minima parte al Rock della SUN.
Ci sono anche dettagli sul implementazione delle AVX di Intel all'interno del progetto SSE5.
Molto materiale proviene ovviamente dai brevetti depositati negli ultimi anni.
Eccovi alcuni Links.
http://citavia.blog.de/ (Sito che elenca i brevetti)
http://pc.watch.impress.co.jp/docs/c...18_168661.html (articolo di H.Goto)
http://aceshardware.freeforums.org/i...-75.html#10678 (parte di una discussione che tratta della nuova architettura e della implementazione delle AVX)

|
Quote:
Originariamente inviato da bjt2
L'architettura è particolare, nel senso che la pipeline di decoding è unica, ma hanno splittato la cache dati L1. Per vedere se sono miglioramenti rispetto al K8/10 bisogna vedere la lunghezza delle code dello scheduler e quante microoperazioni per ciclo può fare ogni pipeline. Ma siccome si parlava di pipeline più lunghe per frequenze presumibilmente più alte, è probabile che le unità siano anche di meno. Daltronde splittare la cache dati aiuta anche a salire di clock...
Appena ho tempo leggerò gli articoli linkati. Magari c'è qualche dettaglio in più...
|
Quote:
Originariamente inviato da bjt2
Allora... Ho letto l'articolo. Sono solo ipotesi, ma si basano su brevetti depositati. A prima vista potrebbe sembrare un normale hyperthreading. Ma è diverso. Le due pipeline intere e la pipeline FP possono essere usate da entrambi i thread eventualmente combinati (per esempio operazioni AVX intere da 256 bit se le pipeline intere sono da 128 bit saranno splittate in 2 operazioni a 128 bit e occuperanno tutte e due le pipeline). Il decoder potrà decodificare 4 istruzioni per ciclo anche dei due thread misti e nel caso di istruzione semplice in un thread e complessa nell'altra, potranno andare in parallelo. Finalmente sarà introdotta una trace cache delle istruzioni decodificate e il loop detection che tiene in questa cache il codice del loop già decodificato. Ci sarà una cache L2 probabilmente condivisa tra questa coppia di core, ci sarà una modalità turbo come quella dei core i7 e forse la cache L1 sarà con latenza di 2 cicli (!). In sostanza 2 core condividono la cache L1 istruzioni, il decoder, la cache L2 e l'unità FP, ma poi per il resto sono 2 core separati, che nel caso serva, possono unire le forze per un solo thread (vedi istruzioni a 256 bit). Questo può aver fatto nascere le voci sul reverse hyperthreading, perchè in questo caso questi 2 core semplificati possono unire le forze se necessario...
|
Quote:
Originariamente inviato da Ren
|
Quote:
Originariamente inviato da bjt2
In effetti questo ha più senso di quello letto nell'articolo: la cache L1 splittata porrebbe dei problemi. Invece una cache L1 unificata per coppia di core, ma con 4 porte anzichè 2 da la massima flessibilità per far girare 1 o 2 threads. Ossia dinamicamente da la possibilità di avere un Hyperthreading pompato (perchè si hanno il doppio delle porte per la L1 per 2 threads) o un reverse Hyperthreading...
|
Aggiornamento 24.08.2009
Quote:
Originariamente inviato da Ren
Dal suo blog "dresdenboy" ha stilato un abbozzo dell’architettura bulldozer seguendo gli ultimi brevetti depositati da AMD.
Nei prossimi giorni si passerà all'argomentazione dello schema.
Comunque si evincono dettagli sulla pipeline in Virgola mobile e sulla comunicazione tra i cluster interi e FP.

|
Aggiornamento 28.09.2009
Quote:
Originariamente inviato da M4R1|<
bulldozer, da quello che aveva detto bjt2, dovrebbe essere in grado di eseguirle in un solo passo. Cmq dire ora che Sandy Bridge nn sarà un grosso cambiamento rispetto a Nehalem è un po' azzardato 
|
Risposta di bjt2
Quote:
Originariamente inviato da bjt2
Per quanto riguarda il core buldozer... Se le voci che girano sono esatte, quel reverse hyperthreading di cui si vociferava dovrebbe essere il seguente: le unità FP sono sempre a 128 bit, ma due (o più) core fisici condividono le unità intere e FP nel senso che entrambi i core possono utilizzarle. Questo perchè nelle precedenti architetture si è visto che le unità sono sottoutilizzate. Una istruzione a 256 bit è sempre spezzata in 2 a 128 bit, ma essendoci più unità intere e FP (anche se in comune) se non sono tutte utilizzate, le due parti a 128 bit possono essere eseguite in parallelo.
|
Quote:
Originariamente inviato da Ren
|
__________________
AMD Ryzen 5600X|Thermalright Macho Rev. B|Gigabyte B550M AORUS PRO-P|2x16GB G.Skill F4-3200C16D-32GIS Aegis @ 3200Mhz|1 M.2 NVMe SK hynix Platinum P41 1TB (OS Win11)|1 M.2 NVMe Silicon Power A60 2TB + 1 SSD Crucial MX500 1TB (Games)|1 HDD SEAGATE IronWolf 2TB|Sapphire【RX6600 PULSE】8GB|MSI Optix MAG241C [144Hz] + AOC G2260VWQ6 [Freesync Ready]|Enermax Revolution D.F. 650W 80+ gold|Case In Win 509|Fans By Noctua|¦
Ultima modifica di capitan_crasy : 30-09-2009 alle 13:28.
|
|
|