Game Mode, architettura e test latenza Infinity Fabric

Ci siamo occupati dell'architettura Zen in dettaglio e anche di Infinity Fabric. Date un'occhiata a quegli articoli per avere maggiori informazioni.

Zeppelin ovunque

L'enorme package di Threadripper nasconde tanta complessità, ma faremo del nostro meglio per semplificare e spiegare come si relaziona con le nuove Creator e Game Mode messe in campo da AMD.

L'architettura Zen usa un CCX quad-core (CPU Complex). AMD dota ogni CCX di 8 MB di cache L3 suddivisa in quattro slice; ogni core nel CCX accede a tutti gli slice L3 con la stessa latenza media. Due CCX permettono di creare un die a 8 core Ryzen 7 (il grande blocco arancione nella seconda immagine sotto), e i due comunicano tramite Infinity Fabric. I CCX condividono lo stesso controller di memoria dual-channel. Di fondo abbiamo due CPU quad-core che parlano tra loro tramite l'interconnessione Infinity Fabric che gestisce anche il traffico northbridge e PCIe.

01 PNG
Clicca per ingrandire
Ryzen Die Shot 1
Clicca per ingrandire

Tutti i Ryzen 7, 5 e 3 integrano lo stesso singolo die Zeppelin. Anche se ogni core in un CCX quad-core può accedere alla cache locale con la stessa latenza media, il "viaggio" per recuperare il dato in CCX adiacenti è penalizzante sul fronte della latenza. A soffrire è anche la comunicazione tra i thread sui core in CCX separati, cosa molto importante per il gaming. Diversi motori di gioco suddividono i vari compiti in thread differenti, ma dipendono dalla costante sincronizzazione tra loro. Gli sviluppatori possono compensare parte della latenza di comunicazione ottimizzando per l'architettura Ryzen.

Costruire Threadripper

Il grafico sotto rappresenta il die di un processore server AMD EPYC, che condivide lo stesso progetto di base di Threadripper. Possiamo vedere quattro die Zeppelin separati connessi tramite Infinity Fabric, e quattro CCX all'interno di ogni die. Questo crea un Multi-Chip Module (MCM) a 32 core. Threadripper è "solo" un processore a 16 core. Per creare questa configurazione AMD adotta due die "falsi", i quali sono riempitivi non funzionanti che assicurano l'integrità strutturale dell'heatspreader e un accoppiamento coerente con i pin del socket. Senza questi die spenti, l'IHS potrebbe piegarsi quando fissateil dissipatore, o il chip potrebbe flettersi e non fare pieno contatto con i pin. AMD dice che i die funzionanti di Threadripper sono sempre posti diagonalmente l'uno con l'altro, il che ha senso considerando il progetto dell'interconnessione.

Threadripper 01
Threadripper 02

Ricordate, ogni die Zeppelin ha i propri controller di memoria e PCIe. Questo significa che se un carico che si svolge su un die ha bisogno di accedere a un dato che risiede nella memoria dell'altro die (la memoria "lontana" di cui parlavamo prima), deve attraversare una maggior distanza. Questo introduce un livello di latenza che non avevamo visto nei precedenti modelli Ryzen, e il suo effetto sulle prestazioni gaming è marcato. L'impatto non è così severo con la maggior parte dei carichi professionali, ma alcuni ne risentono.

Gli interruttori "magici"

Per alleviare l'impatto dell'accesso alla memoria "lontana" AMD ha introdotto una nuova modalità di accesso alla memoria che può essere attivata nel BIOS o tramite il software Ryzen Master. Le impostazioni Local e Distribuited permettono di passare a NUMA (Non-Uniform Memory Access) o UMA (Universal Memory Access).

UMA (distributed) è piuttosto semplice; permette ai die di accedere a tutta la memoria collegata. La modalità NUMA (local) cerca di mantenere tutti i dati per l'esecuzione del processo sul die confinato al suo controller di memoria direttamente connesso. Questo riduce e possibilmente elimina, il recupero di dati dalla memoria "lontana" connessa a un altro die. NUMA affonda le sue radici nel mondo enterprise, ma la tecnica funziona meglio se i programmi sono progettati per usarla. È una rarità in ambito desktop, e anche se quasi nessun software desktop la supporta, possono esserci vantaggi prestazionali per i software non NUMA.

Threadripper 03

Threadripper introduce più core sui PC desktop rispetto a quanto visto in passato; alcuni programmi di conseguenza sono presi in contropiede. Giochi come Far Cry Primal e la serie DiRT non funzionano nemmeno usando Threadripper al massimo delle sue potenzialità. Questo è un problema, quindi AMD ha creato una "modalità compatibile" che disattiva metà core del processore tramite l'esecuzione di un comando "bcdedit /set numproc XX" in Windows che in effetti disattiva metà del processore. Fortunatamente a causa dell'assegnazione dei core da parte del sistema operativo, il comando disattiva tutti i core/thread sul secondo die. Questo ha il beneficio collaterale di eliminare la comunicazione thread-to-thread su die separati, e si rivela una grande soluzione alla costante sincronizzazione tra thread durante la maggior parte dei carichi gaming.

Dato che questo cambiamento è fatto in software, il die "disattivato" è ancora alimentato, quindi il sistema può ancora accedere ai controller di memoria e PCIe del die inattivo.

Game Mode e Creator Mode

Quindi che fare con queste modalità? Ci sono quattro combinazioni separate che impattano su ogni software o gioco in modo diverso, quindi dovete provarle tutte per trovare la combinazione migliore possibile per il vostro carico. Questa è una fortuna per chi ama spremere ogni goccia prestazionale dal sistema, ma è un incubo per tutti gli altri.

threadripper profiles
Clicca per ingrandire

AMD ha deciso di semplificare il processo indicando due combinazioni che funzioneranno al meglio per giochi e software standard. Creator mode, che è la configurazione stock, "abilita" tutti e 32 i thread. Dovrebbe offrire prestazioni eccellenti con la maggior parte dei software di produttività.

Game mode taglia metà dei core tramite la modalità di compatibilità e riduce la memoria e la latenza die-to-die con la modalità di memoria Local. Testeremo entrambe le configurazioni con i giochi, e inoltre proveremo un'altra configurazione che offre tutti i thread.

Test latenza Infinity Fabric

La comunicazione tra i die aggiunge un altro strato di latenza alla complicata architettura di Ryzen. Presentano anche delle sfide in alcuni applicazioni, come quelle con thread sincronizzati o che devono recuperare dati frequentemente da memoria lontana, ma hanno meno impatto in altre.

  Latenza intra-Core Latenza intra-CCX Core-to-Core Latenza Cross-CCX Core-to-Core Latenza media Cross-CCX Latenza Die-to-Die Latenza media Die-To-Die Transfer Bandwidth medio
TR 1950X Creator Mode DDR-2666 13.7 - 14.1 39.4 - 43.2ns 157.6 - 171.3 168ns 180.6 - 256.7ns 238.47ns 90.26 GB/s
TR 1950X Creator Mode DDR4-3200 13.8 - 14.9 39.2 - 45.4ns 144.9 - 167.2ns 160.1ns 213.1 - 227.8ns 216.9ns 91.67 GB/s
TR 1950X Game Mode DDR4-2666 13.9 - 14.2ns 39.5 - 42.3ns 149.2 - 164.1ns 159.66ns X X 46.58 GB/s
TR 1950X Game Mode DDR4-3200 14.3 - 14.9ns 41.2 - 46.2ns 123 - 150.6ns 145.44ns X X 45.52 GB/s
TR 1950X Local/SMT DDR4-2666 13.9 - 14.4ns 39.6 - 43.1ns 168.7 - 175.4ns 171.48ns 232.4 - 240.8 235.38ns 92.7 GB/s
TR 1950X Local/SMT DDR4-3200 13.9 - 14.4ns 39.9 - 44.5ns 146.7 - 159.4ns 153.89ns 209.3 - 220.9ns 212.53ns 91 GB/s
Ryzen 7 1800X 14.8ns 40.5 - 82.8ns 120.9 - 126.2ns 122.96ns X X 48.1 GB/s
Ryzen 5 1600X 14.7 - 14.8ns 40.6 - 82.8ns 121.5 - 128.2ns 123.48ns X X 43.88 GB/s

La misura della latenza intra-core rappresenta la comunicazione tra due thread logici residenti sullo stesso core fisico e non sono influenzati dalla velocità della memoria. Le misure intra-CCX quantificano la latenza tra thread che sono sullo stesso CCX ma non risiedono sullo stesso core. In passato abbiamo osservato variazioni prestazionali leggere, ma la latenza intra-CCX è anch'essa ampiamente non influenzata dalla velocità della memoria. Tuttavia, abbiamo visto un grande calo nella latenza cross-CCX, la quale denota la latenza tra thread posti su due CCX separati, tramite l'aumento del data trasfer rate di memoria da DDR4-1333 a DDR4-3200 sui modelli Ryzen 5 e Ryzen 7.

Lo stesso trend generale continua con Threadripper. Come potete vedere la Game Mode rimuove la latenza die-to-die per i thread disabilitando effettivamente un die, ma riduce anche le risorse di calcolo. È una caratteristica interessante che darà benefici con alcuni carichi, ma creerà problemi in altri.

Notiamo anche che la combinazione Local/SMT, che consiste nell'impostazione local e lascia tutti i core attivi (legacy off), offre il miglioramento migliore di latenza generale tramite l'overclock della memoria. Abbiamo anche registrato una latenza cross-CCX più alta con i processori Threadripper.

Processore Latenza intra-Core Latenza Core-To-Core Latenza media Core-To-Core Transfer Bandwidth medio
Core i9-7900X 14.5 - 16ns 69.3 - 82.3ns 75.56ns 83.21 GB/s
Core i9-7900X @ 3200 MT/s 16 - 16.1ns 76.8 - 91.3ns 83.93ns 87.31 GB/s
Core i7-6950X 13.5 - 15.4ns 54.5 - 70.3ns 64.64ns 65.67 GB/s
Core i7-7700K 14.7 - 14.9ns 36.8 - 45.1ns 42.63ns 35.84 GB/s

Siamo nel mezzo di una serie di test più ampia per quantificare come queste modalità impattano sul bandwidth e la latenza di memoria, tra le tante cose. Restate sintonizzati.

Pagina precedente

Socket TR4, X399 e configurazione di prova

Il socket TR4 di Threadripper

I processori Threadripper richiedono una nuova interfaccia. Il socket TR4 (SP3r2) per schede madre X399 ha 4094 pin, ed è molto più complesso dell'LGA 2066 delle motherboard Intel X299. Il socket TR4 segna la transizione di AMD dal PGA (Pin Grid Array) dei processori Ryzen a un'implementazione LGA (Land Grid Array).

01
02
03
04
05
06
07

Il processore usa un processo di montaggio unico che dovrebbe essere più sicuro del normale meccanismo, pur rimanendo semplice. Basta rimuovere tre viti Torx in un ordine predefinito e il meccanismo di ritenzione si apre. Rimuovete la copertura di plastica interna e poi inserite il processore - circondato da plastica arancione - nella slitta. È importante lasciare la copertura nera sopra il socket fino a quando installate il processore nell'alloggiamento flip-up. Quei pin sono fragili.

Dopo aver inserito il processore nella sua slitta, rimuovete la copertura e inserite il processore nel socket. Poi dovrete chiudere il meccanismo di montaggio e serrare i fermi - nell'ordine indicato - con la chiave Torx T20 fornita in bundle. Abbiamo incluso un'immagine della tecnica di applicazione della pasta termica consigliata da AMD. L'installazione dell'heatsink richiede quattro ulteriori fermi.

Anche il socket TR4, come Threadripper, affonda le sue radici nel progetto datacenter EPYC, ma i processori non sono intercambiabili.

Chipset X399

Il chipset X399 supporta due USB 3.1 Gen2 e sei USB 3.1 Gen1, insieme a sei USB 2.0. Due linee PCIe 3.0 permettono ai produttori di motherboard di aggiungere ulteriore connettività per l'archiviazione (quattro SATA o due SATA Express), e 8 linee PCIe 2.0 general purpose consentono di adottare altri controller, come Ethernet o WLAN/Bluetooth. Otto porte SATA completano le opzioni di connettività del chipset, e potete sfruttare diverse configurazioni RAID per i dispositivi SATA collegati. Sfortunatamente il RAID NVMe in hardware non è ancora supportato, mentre il RAID software è una possibilità.

x399
Clicca per ingrandire

Il processore Threadripper offre ulteriori otto USB 3.1 Gen1 e quattro SATA - con RAID hardware supportato. Le 60 linee PCIe rimanenti supportano fino a sette dispositivi PCIe. In generale, la piattaforma offre un buon insieme di opzioni di connettività.

Configurazione di prova

Sistema
Hardware
AMD Socket SP3 (TR4)
AMD Ryzen Threadripper 1950X, 1920X
Asus X399 ROG Zenith Extreme
2x 8GB G.Skill RipJaws V DDR4-3200

Intel LGA 2066
Intel Core i9-7900X
MSI X299 Gaming Pro Carbon AC
4x 4GB G.Skill RipJaws IV DDR4-2600

AMD Socket AM4 Workstation
AMD Ryzen 7 1800X, 1700X, 1600X, 1500X
MSI X370 Tomahawk
4x 8GB G.Skill TridentZ DDR4-3200

Intel LGA 2011v3
Intel Core i7-6900K
MSI X99S XPower Gaming Titanium
4x 4GB Crucial Ballistix DDR4-2400

Intel LGA 1151
Intel Core i7-7700K
MSI Z270 Gaming 7
2x 8GB Corsair Vengeance DDR4-3200 @ 2400 MT/s

All Systems
GeForce GTX 1080 Founders Edition
Nvidia Quadro P6000 (Workstation)

1x 1TB Toshiba OCZ RD400 (M.2, Sistema)
2x 960GB Toshiba OCZ TR150 (archiviazione, immagini)
be quiet! Dark Power Pro 11, 850W
Windows 10 Pro (Creators Update)
Raffreddamento Germania
Alphacool Eiszeit 2000 Chiller
Alphacool Eisblock XPX
Thermal Grizzly Kryonaut
Monitor Eizo EV3237-BK
PC Case Lian Li PC-T70 con kit di estensione e mod
Configurazioni: banchetto aperto, case chiuso
Rilevazione consumi Contact-free DC Measurement at PCIe Slot (Using a Riser Card)
Contact-free DC Measurement at External Auxiliary Power Supply Cable
Direct Voltage Measurement at Power Supply
2x Rohde & Schwarz HMO 3054, 500MHz Digital Multi-Channel Oscilloscope with Storage Function
4x Rohde & Schwarz HZO50 Current Probe (1mA - 30A, 100kHz, DC)
4x Rohde & Schwarz HZ355 (10:1 Probes, 500MHz)
1x Rohde & Schwarz HMC 8012 Digital Multimeter with Storage Function
Rilevazione temperatura 1x Optris PI640 80Hz Infrared Camera + PI Connect
Real-Time Infrared Monitoring and Recording
Rilevazione rumorosità NTI Audio M2211 (with Calibration File, Low Cut at 50Hz)
Steinberg UR12 (with Phantom Power for Microphones)
Creative X7, Smaart v.7
Custom-Made Proprietary Measurement Chamber, 3.5 x 1.8 x 2.2m (L x D x H)
Perpendicular to Center of Noise Source(s), Measurement Distance of 50cm
Noise Level in dB(A) (Slow), Real-time Frequency Analyzer (RTA)
Graphical Frequency Spectrum of Noise

VRMark, 3DMark e AotS: Escalation

Abbiamo fatto test con modalità Game e Creator, quindi possiamo confrontare le configurazioni ottimizzate per il gaming e quella standard. I Threadripper hanno anche due "interruttori software" che permettono ulteriori configurazioni uniche, quindi abbiamo testato anche con tutti i core a disposizione e accesso alla memoria impostato su Local. Questi risultati "Local/SMT" garantiscono un buon incremento prestazionale nei giochi che sfruttano pesantemente i thread. Presentiamo diversi grafici con tutte le configurazioni ma a causa di limiti di spazio con quelli sulla variabilità del frame time, spesso inseriamo grafici secondari con ulteriori dati prestazionali.

AMD dice che alcuni giochi preferiscono configurazioni differenti, ma non abbiamo una lista dettagliata di impostazioni preferite per i singoli titoli. La speranza è che questo possa servire da guida ai giocatori che cercano le migliori impostazioni per i loro giochi preferiti.

Intel ha pubblicato un nuovo microcode per i processori Skylake-X la scorsa settimana. Questo microcode riduce le prestazioni in diversi titoli e anche l'offset AVX di due bin. Abbiamo anche notato soglie di attivazione di Turbo Boost molto inferiori, ma questo potrebbe essere legato a un nuovo BIOS di MSI. Immaginiamo che i cambiamenti derivino dai problemi di consumo e temperatura che abbiamo incontrato nei nostri test. Abbiamo ritestato entrambe le CPU Skylake-X con il microcode più recente.

Le prestazioni di gioco di Ryzen sono in costante evoluzione. In questo articolo trovate tutti i processori ritestati con gli ultimi driver di chipset, GPU, BIOS e patch dei giochi. I risultati che vedete sono confrontabili solo con la recensione di Ryzen 3 1300X.

VRMark e 3DMark

VRMark premia il throughput IPC e la frequenza, quindi Ryzen Threadripper finisce in coda al grafico mentre i modelli Intel sono davanti. Sospettiamo inoltre che VRMark non sia ottimizzato, quindi la situazione potrebbe cambiare in futuro.

vrmark1
vrmark2
vrmark3
vrmark4

Threadripper 1950X si comporta meglio nel test DX11 sulla fisica che sfrutta pesantemente i thread, dove guida con un ampio margine e riesce a passare davanti al Core i9-7900X overcloccato durante il test CPU DX12 grazie al copioso numero di core. Il Core i7-7700K soffre in ambedue i test a causa del progetto quad-core.

Le prestazioni gaming, dalla prospettiva della CPU, dipendono altamente dalla generazione della massima quantità di draw call, a volte decine di milioni al secondo, usando l'API. Threadripper 1950X si comporta bene nei test DX12 che sfruttano i thread, ma le prestazioni Vulkan soffrono con tutti e 32 thread attivi.

Ashes of the Singularity: Escalation

ashes1
ashes2
ashes3
ashes4
ashes5
ashes6
ashes7
ashes8

Ashes of the Singularity: Escalation è un titolo che scala bene all'aumentare dei thread. Questa è musica per le orecchie di Threadripper che è davanti nella sua configurazione overcloccata, ma il Core i9-7900X con il 60% di core in meno mette in campo una difesa accanita. Il 1950X non si comporta bene in configurazione standard; il Core i7-7820X riesce a battere il contendente a 16 core.

Continua a pagina 4

Pubblicità

AREE TEMATICHE