Successore dell'architettura Volta, Turing™ è la più recente famiglia di GPU NVIDIA® NVIDIA. La GPU Turing™ è disponibile con GeForce®, dove viene utilizzata per eseguire il rendering di giochi altamente realistici e con Quadro®, accelerando i flussi di lavoro di creazione di contenuti. La serie NVIDIA® Tesla® è progettata per gestire sistemi di intelligenza artificiale e carichi di lavoro HPC (High Performance Computing) nei data center. NVIDIA® Tesla® T4 è l'unica GPU di livello server con la microarchitettura Turing™ attualmente disponibile sul mercato ed è supportata dai server Dell EMC PowerEdge R640, R740, R740xd e R7425. Questo blog esamina le prestazioni della nuova Tesla T4 mettendole a confronto con quelle della Volta V100-PCIe più recente su un server PowerEdge R740 per diverse applicazioni HPC, tra cui HOOMD-blue, Amber, NAMD e HPL.
Il server PowerEdge R740 è un server con montaggio su rack 2U Intel® Skylake che fornisce il perfetto equilibrio tra storage, I/O e supporto acceleratore. Supporta fino a quattro* GPU T4 a slot singolo o tre GPU V100-PCIe a slot doppio in slot PCIe 3.0 x16. La Tabella 1 riporta le differenze tra una T4 e una V100. Volta™ V100 è disponibile in configurazioni di memoria da 16 GB o 32 GB. Poiché la T4 è disponibile solo in versione da 16 GB, per ottenere risultati comparabili delle prestazioni è stata utilizzata la scheda V100 con memoria da 16 GB. La Tabella 2 elenca i dettagli dell'hardware e del software del banco di prova.
Tabella 1. Confronto tra T4 e V100
Tesla V100-PCIe |
Tesla T4 |
|
---|---|---|
Architettura |
Volta |
Turing |
Core CUDA |
5120 |
2560 |
Core Tensor |
640 |
320 |
Capacità di elaborazione |
7.0 |
7.5 |
Clock GPU |
1.245 MHz |
585 MHz |
Boost clock |
1.380 MHz |
1.590 MHz |
Tipo di memoria |
HBM2 |
GDDR6 |
Bus di memoria |
4096 bit |
256 bit |
Larghezza di banda |
900 GB/s |
320 GB/s |
Larghezza slot |
Slot doppio |
Slot singolo |
Precisione singola (FP32) |
14 TFLOPS |
8,1 TFLOPS |
Precisione mista (FP16/FP32) |
112 TFLOPS |
65 TFLOPS |
Precisione doppia (FP64) |
7 TFLOPS |
254,4 GFLOPS |
TDP |
250 W |
70 W |
Tabella 2: Dettagli della configurazione e della versione del software R740
Processore |
2 Intel® Xeon ® Gold 6136 a 3 GHz, 12c |
---|---|
Memoria |
384 G (12*32 G a 2.666 MHz) |
Disco locale |
SSD da 480 G |
Sistema operativo |
Red Hat Enterprise Linux Server versione 7.5 |
GPU |
3 V100-PCIe 16 GB o 4 T4 16 GB |
Driver CUDA |
410.66 |
Toolkit CUDA |
10.0 |
Impostazioni del processore > processori logici |
Disabilitati |
Profili di sistema |
Prestazioni |
HPL |
Compilato con CUDA 10.0 |
NAMD |
NAMD_Git-2019-02-11 |
Giallo |
18.12 |
HOOMD-blue |
v2.5.0 |
OpenMPI |
4.0.0 |
Figura 1. Risultati delle prestazioni di precisione singola e doppia hoOMD-blue con V100 e T4 sul server PowerEdge R740
HOOMD-blue (ovvero Highly Optimized Object-oriented Many-particle Dynamics - blue) è un simulatore di dinamica molecolare per uso generico. Per impostazione predefinita, HOOMD-blue viene compilato in precisione doppia (FP64) e la versione 2.5 fornisce un parametro SINGLE_PRECISION=ON per forzarne la compilazione in precisione singola (FP32). La Figura 1 mostra i risultati del dataset "microsphere" per la precisione singola e doppia. L'asse x riporta il numero di GPU e la metrica delle prestazioni è indicata in ore per l'esecuzione di 10e6 step.
Si osserva che le prestazioni FP64 della T4 sono relativamente basse. Ciò è dovuto alla limitazione dell'hardware. In teoria, la T4 può erogare prestazioni di picco da 254 GFLOPS (fare riferimento alla Tabella 1) in precisione doppia, mentre i risultati della V100 sono di circa 27 volte migliori. Tuttavia, le prestazioni di applicazioni come HOOMD-blue, che possono essere compilate ed eseguite con precisione singola, possono ottenere un vantaggio in termini di prestazioni con l'opzione di compilazione FP32. La community di HOOMD-blue sta considerando i nostri suggerimenti sul supporto della precisione mista su tutti i moduli HOOMD-blue. Una volta completato il lavoro, HOOMD-blue potrà sfruttare al meglio l'hardware supportato con precisione mista.
Confrontando le prestazioni in precisione singola delle T4 e V100, abbiamo notato che la V100 è 3 volte migliore rispetto alla T4. Queste prestazioni sono quelle previste dalla T4 a causa del numero di core CUDA e della potenza nominale dell'acceleratore.
Le GPU nel server PowerEdge R740 sono collegate tramite PCIe. Per i tre data point delle GPU V100, il bus PCIe si satura a causa delle comunicazioni peer-to-peer. Ciò influisce sulle prestazioni complessive, per cui si ottengono come risultato le stesse prestazioni di una sola GPU.
Amber è il nome collettivo di una suite di programmi che consentono agli utenti di eseguire simulazioni di dinamica molecolare, in particolare sulle biomolecole. Il termine Amber viene utilizzato anche per fare riferimento ai campi di forza empirici implementati in questa suite. Amber versione 18.12 con AmberTools 18.13 è testata con la suite di benchmark Amber 18, che include i dataset JAC, cellulose, FactorIX, STMV, TRPCage, myoglobin e nucleosome.
Figura 2. Risultati di Amber Explicit Solvent con V100 e T4 sul server PowerEdge R740
Figura 3. Risultati amber impliciti Solvent con V100 e T4 sul server PowerEdge R740
La Figura 2 e la Figura 3 mostrano i numeri relativi alle prestazioni della scheda singola e dell'intero sistema rispettivamente per i solventi espliciti e i solventi impliciti. Il data point "system" del grafico precedente rappresenta il throughput aggregato completo del sistema di tutte le GPU. Il server PowerEdge R740 supporta tre V100 o quattro T4, quindi le barre "di sistema" in rosso e blu sono i risultati con tre V100 o quattro T4.
Il motivo per cui si preferiscono i dati aggregati di più schede GPU è che le GPU Pascal e successive non sono scalabili oltre un singolo acceleratore per l'applicazione Amber. Gli utenti eseguono in genere più simulazioni in parallelo su altre GPU. In termini di prestazioni con un dataset di grandi dimensioni come STMV (1.067.095 atomi), una T4 singola dispone del 33% delle capacità di una V100, mentre l'intero sistema dispone del 44% della capacità di una V100. Dataset come TRPCage (solo 304 atomi) sono di dimensioni troppo ridotte per l'utilizzo effettivo di GPU V100 e pertanto le prestazioni su di esse non sono molto più veloci rispetto alle T4 come invece si verifica per i più vasti PME. In base al risultato riportato sul sito web ufficiale di Amber, quasi tutti i numeri delle GPU sono da tre a quattro volte più veloci rispetto alle esecuzioni sulla sola CPU, quindi avere una scheda T4 in un server che si occupa di dataset di dimensioni ridotte sarà una scelta valida.
Figura 4. Risultati delle prestazioni NAMD con V100 e T4 sul server PowerEdge R740
NAMD è un codice di dinamica molecolare progettato per la simulazione ad alte prestazioni di sistemi biomolecolari di grandi dimensioni. In questi test, non è stato utilizzato il binario predefinito. NAMD è invece stato creato con il codice source più recente (NAMD_Git-2019-02-11) con CUDA 10.0. Per ottenere prestazioni ottimali, NAMD è stato compilato con il compilatore e le librerie Intel® (versione 2018u3). La Figura 4 traccia i risultati delle prestazioni con il dataset STMV (1.066.628 atomi, periodico, PME). NAMD non è scalabile oltre una scheda V100, ma presenta una buona scalabilità con tre schede T4. Inoltre, una singola GPU T4 fornisce il 42% delle prestazioni della V100. Si tratta di un numero di tutto rispetto considerando che ha solo il 28% del TDP della V100. La T4 potrebbe essere una scelta valida per i data center con capacità di alimentazione e raffreddamento limitate.
Figura 5. Risultati HPL con V100 e T4 sul server PowerEdge R740
La Figura 5 mostra le prestazioni di HPL sul server PowerEdge R740 con più GPU V100 o T4. Come previsto, i numeri HPL presentano una buona scalabilità con più GPU V100 e T4. Ma le prestazioni delle T4 sono notevolmente inferiori rispetto alle V100 a causa della limitazione FP64. A seguito della limitata capacità in precisione doppia della T4, il confronto delle prestazioni con la V100 non è ideale e Volta V100 rimane la scelta migliore per tali applicazioni a precisione doppia.
In questo blog, sono state confrontate le prestazioni delle applicazioni HPC con HOOMD-blue, Amber, NAMD e HPL con le schede V100 e T4 sul server Dell EMC PowerEdge R740. La T4 non solo viene utilizzata per l'inferenza di deep learning, ma è utile anche per le applicazioni HPC con supporto della precisione singola o mista. Il relativo TDP basso può aiutare a velocizzare i data center tradizionali dove la capacità di alimentazione e di raffreddamento è limitata. Il fattore di forma ridotto PCIe della T4 la rende adatta ai server PowerEdge d'uso più generico. In futuro, sono previsti ulteriori test con più applicazioni come RELION, GROMACS e LAMMPS, nonché test per applicazioni in grado di sfruttare la precisione mista.
*Dichiarazione di non responsabilità: Ai fini del benchmarking, sono state valutate quattro GPU T4 in Dell PowerEdge R740. Attualmente il server PowerEdge R740 supporta ufficialmente massimo tre T4 in slot PCIe x16.