Quando AMD presentò la prima generazione di Zen, parlando di un miglioramento del 40% dell'IPC rispetto a Piledriver, la maggior parte degli utenti e dei giornalisti ci credettero. Bulldozer era un'uArch talmente lenta e bistrattata che risultava essere un'affermazione verosimile, anche perché un miglioramento del 40% avrebbe comunque lasciato AMD ben dietro rispetto alle uArch Core di Intel. Così, quando furono pubblicate le prime recensioni delle CPU Ryzen ci fu, sì, un'ondata di ottimismo generalizzato, ma si era anche coscienti che la strada da fare sarebbe stata lunga per recuperare il terreno perso nell'arco dei 10 anni precedenti.
Giornalisti ed utenti credevano che AMD avrebbe impiegato diversi anni per recuperare quello svantaggio. Intel era troppo avanti, aveva alle spalle oltre un decennio di ottimizzazioni. Ad ogni generazione Intel aveva migliorato l'IPC delle proprie uArch di appena quale punto percentuale. Chi era AMD, con le poche risorse a disposizione, per fare meglio di Intel? Se non ce l'aveva fatta Intel ad effettuare grossi balzi in avanti nell'IPC, perché avrebbe dovuto farcela AMD?
Per questo motivo, quando AMD presentò l'uArch Zen2 ci fu un sussulto collettivo: AMD era riuscita a migliorare l'IPC del 13% rispetto a Zen+, e del 16% rispetto a Zen. Questo miglioramento ha portato le CPU AMD ad essere migliori delle CPU Intel nella maggior parte dei task MT relativi ai software di produttività, ma il design multichip (chiplet) è risultato svantaggioso in quei software sensibili alla latenza della Cache e del Memory Controller. Battute in campo professionale, le CPU Intel rimanevano ancora le regine del gaming ... almeno fino ad oggi!
Zen3 ha spodestato, a 17 anni dalla presentazione delle CPU ClawHammer, Intel anche in questo ambito. AMD, oggi, ha le migliori CPU per qualsiasi ambito: professionale o gaming. Non solo. Ha anche le CPU meno esose dal punto di vista energetico, grazie al processo produttivo N7 di TSMC, e meno costose da produrre, grazie al design chiplet.
Dietro Zen3, comunque, possiamo trovare una miriade di miglioramenti rispetto alle uArch Zen e Zen2. Curiosi di conoscerli? Andiamo a scoprirli!
Altre letture d'interesse:
Come abbiamo anticipato, Zen3 ha portato con sé un miglioramento medio del 19% dell'IPC rispetto a Zen2, un numero GIGANTESCO per chi conosce l'ambito. A questo punto sorge spontanea una domanda: come è riuscita AMD a raggiungere un tale risultato?
Per realizzare Zen AMD, al fine di velocizzarne lo sviluppo, ha conservato diverse soluzioni ingegneristiche utilizzate dall'uArch Bulldozer, ad esempio l'unità di calcolo Floating Point e la Branch Prediction Unit, dall'uArch Star, il design della Cache, e dall'uArch Jaguar, l'Hashed Perceptron System.
AMD, constatato che Intel non avrebbe avuto nulla da immettere sul mercato nel breve periodo, dopo Zen decise di commercializzare un piccolo aggiornamento, Zen+, così da avere tutto il tempo per completare il primo major uplift, Zen 2. Quest'ultima uArch ha migliorato notevolmente Zen 1: una nuova Branch Prediction Unit, un nuovo design della Cache, una nuova Floating Point Unit, ed altro. Possiamo notare, in questo articolo, quanto questi miglioramenti abbiano influito:
Con Zen3 AMD mette nuovamente mano ad alcune sezioni essenziali dell'uArch, ad iniziare dalle unità Integer, le quali finalmente abbandonano un design che ci portiamo dietro da Excavator. Da qui gli ottimi risultati che possiamo osservare nei videogiochi. Evidentemente AMD, con Zen 2, aveva dato priorità ai software professionali ed enterprise, migliorando le unità FP, mentre ora è giunto finalmente il momento di suonare la carica anche in campo ludico. Sempre in questo ambito, AMD ha ridisegnato in parte anche le unità FP, al fine di migliorare le latenze.
Sempre per migliorare le prestazioni, soprattutto quando ci sono notevoli salti da un core all'altro (tipico dei videogame), AMD ha deciso di unificare la Cache L3, passando da due blocchi da 16MB ad un singolo blocco da 32MB. Questo permette a tutti i core di attingere alle medesime informazioni, senza che si perda tempo per copiare le informazioni in un altro blocco, cosa che porta via molto tempo.
In ultimo AMD, nonostante abbia conservato il medesimo I/O Die, il quale integra il Memory Controller DDR4, è riuscita a migliorare notevolmente sia la Bandwidth sia le latenze. Questo significa che AMD è riuscita a rimuovere una serie di colli di bottiglia presenti nel CCX, probabilmente dovuti alla gestione della Cache che, come abbiamo visto, ha subito un notevole lifting. Ora siamo arrivati quasi ai livelli del Memory Controller delle CPU Intel.
Qui in basso, grazie al lavoro di Fritzchens Fritz, possiamo osservare il layout del CCX. Confrontando questa immagine con quella di Zen2, possiamo notare varie differenze: la Cache L3 ha subito numerosi cambiamenti, così come sono cambiati la L1 Instruction Cache e il Branch target predictor. In ultimo, i core Zen3 risultano "più tozzi" rispetto ai core Zen2.
Questi miglioramenti hanno portato ad un notevole boost prestazionale, sia nelle applicazioni professionali, sia - soprattutto - nei videogame. Come è possibile osservare dai grafici riportati qui in basso, effettivamente il miglioramento delle prestazioni si aggira attorno al +19% riportato da AMD, con alcune varianze, dovute principalmente al cap del Power Limit, pari a 142W per le CPU con un TDP di 105W. Per questo motivo le prestazioni con le applicazioni di rendering, ad esempio, non scalano in maniera lineare con l'aumento dei core.
Fonte: Anandtech
CPU | R9 3900X | R9 5900X | Aumento % | R9 3950X | R9 5950X | Aumento % |
Blender | 345 | 298 | +13,62% | 259 | 245 | +5,40% |
Cinebench | 6839 | 8399 | +22,81% | 8993 | 10096 | +12,26% |
Fonte: TechPowerUp
CPU | R5 3600X | R5 5600X | Aumento % | R7 3800XT | R7 5800X | Aumento % |
Blender | 301 | 276 | +8,30% | 223 | 199 | +10,76% |
Cinebench | 3744 | 4346 | +16,08% | 5099 | 6123 | +20,08% |
Come è possibile constatare da questo confronto, passando dal 5600X (6C/12T) al 5800X (8C/16T) le prestazioni, in percentuale, aumentano notevolmente rispetto alla generazione precedente, mentre passare dal 5900X (12C/24T) al 5950X (16C/32T) non porta ad un eguale aumento prestazionale. Prendendo spunto da questi grafici, possiamo quindi affermare che i migliori processori, se utilizzati a default, sono il Ryzen 7 5800X e il Ryzen 9 5900X, in quanto non sono eccessivamente limitati dal Power Limit settato a 142W. Il Ryzen 9 5950X, al contrario, non può far lavorare alla massima frequenza possibile tutti i core a causa del cap del Power Limit. A questo punto sarebbe interessante testare il Ryzen 9 5950X con il limite dei 142W disabilitato. Il Ryzen 5 5600X, in ultimo, non riesce a staccare eccessivamente il Ryzen 5 3600X (TDP 95W) in quanto il Power Limit è decisamente più basso (76W), essendo una CPU con un TDP da 65W. Alla luce di ciò, i risultati del Ryzen 5 5600X risultano ancor più straordinari!
In campo ludico, grazie ai numerosi cambiamenti nel design del core della CPU, possiamo notare miglioramenti ben superiori, appunto perché, come abbiamo specificato in precedenza, è stato con Zen 2 che AMD ha privilegiato le applicazioni Server e Professionali. Particolarmente interessanti sono due benchmark: Counter Strike: Global Offensive e Super Pi 1.5.
Fonte: Techgage
Il primo è un videogame utilizzato ampiamente nei circuiti del gaming competitivo. Le ottime prestazioni garantite dalle CPU Zen 3 saranno utili ad AMD al fine di tornare in auge tra i videogiocatori, come ai tempi dei processori Athlon 64 e Athlon FX. Il secondo benchmark, Super Pi 1.5, è basato su un codice x87 puro, ed Intel ha battuto ogni singola uArch AMD dal 2004 (Dothan) ad oggi. Primeggiare in Super Pi significa possedere effettivamente l'uArch migliore in ogni ambito, a meno che non si utilizzino istruzioni specifiche (es. AVX512).
In ultimo, molti programmatori e games designer stanno pubblicizzando le ottime prestazioni delle nuove CPU AMD, in quanto queste combinano in un unico prodotto le migliori prestazioni in game con le migliori prestazioni di compilazione. Con Intel, al contrario, non era possibile avere un prodotto simile: si doveva scegliere o la migliore CPU da gaming (ad esempio, il Core i7-7700K) o la migliore CPU per la compilazione (ad esempio, il Core i7-6950X).
Qui di seguito i tweet di Sebastian Aaltonen, capo sviluppatore del motore grafico Unity. Se questa visione dovesse prendere piede, risulta probabile che i vari studi svilupperanno motori grafici molto più orientati a sfruttare i punti di forza delle uArch AMD (AKA, i giochi gireranno meglio su hardware AMD).
Remember the i7-7700K? The best consumer CPU 4 years ago. Many smaller gamedevs bought a lot of these. The 10 core i9-6950X was 1700$ and had lower clocks. Barely 2x faster compiling code...
— Sebastian Aaltonen (@SebAaltonen) November 7, 2020
If you are still using a 7700K or 8700K based workstation. Show this chart to your boss. pic.twitter.com/ddNcM9vkmv
Puget System benchmarks all UE4 use cases: Compling, Build Lighting, Recompile Shaders, Package Project, 1080p and 4K runtime frame rate.
— Sebastian Aaltonen (@SebAaltonen) November 8, 2020
Includes most recent Intel and AMD chips, including HEDT.
Great resource for gamedevs for choosing their CPU!https://t.co/Qd5EZ9wThE pic.twitter.com/0eYLtbnVUU
Tabella riepilogativa
CPU | Ryzen 5 3600X | Ryzen 5 5600X | Ryzen 7 3800X | Ryzen 7 5800X | Ryzen 9 3900X | Ryzen 9 5900X | Ryzen 9 3950X | Ryzen 9 5950X |
uArch | Zen2 | Zen 3 | Zen2 | Zen 3 | Zen2 | Zen 3 | Zen2 | Zen 3 |
Core/Thread | 6/12 | 8/16 | 12/24 | 16/32 | ||||
Cache L3 | 2x16 MB | 32 MB | 2x16 MB | 32 MB | 4x16 MB | 2x32 MB | 4x16 MB | 2x32 MB |
Frequenza Base | 3.8 GHz | 3.7 GHz | 3.9 GHz | 3.8 GHz | 3.8 GHz | 3.7 GHz | 3.5 GHz | 3.4 GHz |
Turbo | 4.4 GHz | 4.6 GHz | 4.5 GHz | 4.7 GHz | 4.6 GHz | 4.8 GHz | 4.7 GHz | 4.9 GHz |
TDP | 95W | 65W | 105W | 105W |
105W |
105W | 105W | 105W |
Prezzo (MSRP) | $249 | $299 | $399 | $449 | $499 | $549 | $749 | $799 |
Come è possibile osservare dalla tabella, i prezzi della nuova generazione di CPU Ryzen è leggermente aumentato, cosa che ha fatto storcere il naso sia agli utenti AMD, sia agli utenti Intel propensi a cambiare sponda. Questa decisione di AMD, da un punto di vista prettamente commerciale, risulta condivisibile praticamente al 100%, per una serie di motivi. Il primo è relativo alla scarsa disponibilità di wafer da 7nm per coprire le richieste, non solo dei die Vermeer dedicati alle CPU Ryzen, ma dedicati anche e soprattutto alle CPU EPYC di prossima commercializzazione. Non va poi dimenticato che sui 7nm di TSMC saranno prodotti i SoC dedicati alle console Playstation 5 e XBOX, e le GPU RDNA2. In poche parole, AMD deve equilibrare perfettamente la produzione di questi prodotti al fine di accontentare tutti!
Poiché la richiesta di CPU Ryzen 5000 è elevatissima, ed al momento ogni singola CPU è venduta ancora prima di raggiungere gli scaffali (fisici o virtuali) dei vari negozi, abbassare eccessivamente il prezzo non avrebbe alcun senso. Meglio guadagnare qualcosa in più, al fine di pompare il budget dedicato alla Ricerca & Sviluppo.
Sempre per lo stesso motivo, poiché la resa dei die Vermeer è eccellente, difficilmente vedremo in commercio varianti non-X, in quanto ai piani alti hanno constatato che molti utenti comprano la variante liscia per overclockarla. Per il momento, quindi, non sembra essere prevista la commercializzazione di alcuna variante liscia. Ugualmente, difficilmente potremo acquistare le varianti quad core nel prossimo futuro.
Alla luce di ciò, AMD potrebbe continuare a produrre le CPU Ryzen della serie 2000 sui 12nm di Global Foundries, quale proposta low budget, così da continuare a concorrere nella fascia bassa di mercato, quella attualmente dominata da Intel con delle ottime CPU come il Core i3-10100F (4C/8T) o Core i5-10400F (6C/12T). Le APU basate su Zen3, infatti, sembra siano destinate quasi completamente agli OEM produttori di notebook.