Nonostante molti dei design precedenti dei processori di AMD non abbiano soddisfatto le aspettative in passato, Zen rappresenta un balzo fondamentale su tantissimi livelli. Come abbiamo già descritto nella review di Ryzen 7, quest’architettura è stato un design nato dal nulla, piuttosto che semplicemente un’evoluzione di prodotti già esistenti. È un’importante distinzione da sottolineare con una lineup di CPU come Threadripper visto che una semplice evoluzione non avrebbe permesso ad AMD nemmeno di pensare di competere nell’ambiente HEDT. Inoltre, i risultati parlano chiaro in fasce di prezzo inferiori; partiamo quindi dall’inizio e scendiamo pian piano nei dettagli.
Il mattoncino primario di qualsiasi processore basato su Ryzen è il Compute Complex, o CCX. Ognuno di essi ha 4 cores Zen con 2 MB di cache L2 (512 KB per core), 8 MB di cache L3 condivisa e l’abilità di processare 8 thread concorrenti. Così come gli altri processori basati su Zen, anche Threadripper è dotato di una sfilza di tecnologie SenseMI come Precision Boost, Pure Power, XFR, Neural Net Prediction e Smart Prefetch. Per saperne di più consultate l’articolo su Ryzen 7 linkato qualche riga più sopra.
Mettete due di questi CCX insieme che comunicano tra di loro attraverso l’interconnect ad alta velocità di AMD, l’Infinity Fabric, e avrete il layout base di tutte le CPU Ryzen 3, 5 e 7 finora lanciati. Quello che è stato fatto qui è in realtà parecchio interessante, che sia da un punto di vista negativo o positivo visto che ogni die prodotto ha in realtà 8 core. Per creare nuovi SKU, AMD ha semplicemente messo tutti questi die in un processo di binning (=selezione) dove vengono effettuati tagli (letterali, via laser) per le varianti a 4, 6 o 8 Core di Ryzen.
Ovviamente, il mero numero di transistor crea qualche ostacolo sul TDP e sull’efficienza di calcolo, ma l’Infinity Fabric dovrebbe essere abbastanza versatile da (bene o male) compensare. Questo approccio ha anche permesso ad AMD di lanciare in rapida sequenza un enorme numero di processori, facendo pressione sull’intera lineup di Intel senza per fortuna ridisegnare drasticamente i die ogni volta. Come tutto ciò si traduca in Ryzen Threadripper dovrebbe essere abbastanza ovvio ma secondo AMD solo il miglior 5% dei die diventa poi uno di questi processori di fascia alta.
Threadripper prende l’approccio a doppio CCX e lo eleva all’ennesima potenza, semplicemente prendendo una coppia di doppi CCX e installandoli sullo stesso package. Pensatelo come due Ryzen 7 1800X fusi insieme.
Questi due die comunicano tra di loro, ancora una volta, tramite l’Infinity Fabric, risultando in un trio di interconnessioni e di una bandwidth bi-direzionale die-to-die di ben 102.22 GB/s. Detto questo, la struttura ben distinta dei die potrebbe portare con tutta probabilità a latenze on-chip maggiori e minori prestazioni rispetto a un design tradizionale, ma d’altro canto ciò ha permesso ad AMD di stravolgere la sua lineup con un’architettura estremamente scalabile che può essere facilmente adattata in vari scenari d’utilizzo.
Un buon esempio di questa adattabilità è come la lineup di CPU Threadripper sia stata creata. laddove il 1950X ha un insieme di core completamente funzionanti tra i 4 CCX in due die secondo uno schema 4+4|4+4, il 1920X ha un quartetto di core disabilitati uniformemente creando un layout 3+3|3+3. Quasi sicuramente, il 1900X avrà una distribuzione del tipo 2+2|2+2.
Oltre alla potenza grezza di Threadripper, ognuno di questo gigantesci processori funge anche come completo SoC (System-On-Chip). Ognuno ha accesso a 60 linee PCIe 3.0 che possono essere divise tra slot PCIe 16x e storage NVMe e fino a 8 connessioni USB 3.1 GEn1 attraverso la loro interfaccia I/O ad alta velocità. C’è anche posto per un codec audio ad alta definizione integrato. Tale approccio dovrebbe alleviare i colli di bottiglia per i dispositivi di storage ad alta velocità che, su alcune delle piattaforme Intel, deve spartirsi la già ristretta bandwidth su un’interfaccia DMI limitata.
Forse l’aspetto più interessante di questo design è come gestisca le richieste di memoria, e ve ne parliamo nella prossima pagina.
Discussione su post