Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Dernière révisionLes deux révisions suivantes
documentation:tools:benchmarksgpu [2015/04/26 18:58] – [Tests de la bande passante] cicalugadocumentation:tools:benchmarksgpu [2020/08/25 15:58] – modification externe 127.0.0.1
Ligne 1: Ligne 1:
-====== Utilisation des GPUs au PSMN ====== +===== Benchmarks GPU =====
- +
-{{INLINETOC}} +
- +
-===== Matériel disponible au PSMN ===== +
- +
-Plusieurs cartes GPU NVIDIA sont installées au PSMN : +
-  * [[http://www.nvidia.fr/content/PDF/kepler/Tesla-K20-Passive-BD-06455-001-v07.pdf |Tesla K20]] +
-  * [[http://www.nvidia.fr/object/geforce-gtx-780-fr.html#pdpContent=2 |GeForce GTX780]] +
-  * [[http://www.nvidia.com/docs/IO/43395/tesla-m2090-board-specifications.pdf |Tesla M2090]]  +
- +
-Une comparaison des spécifications constructeur est donnée dans le tableau ci-dessous : +
- +
- +
-^  Spécifications techniques  ^  Tesla  K20  ^  GeForce GTX780  ^  Tesla M2090  ^   +
-|    |||| +
-|  Performance peak en double précision |  1.17 Tflops  |  0.166 Tflops  |  0.66 Tflops  |  +
-|    |||| +
-|  Performance peak en simple précision |  3.52 Tflops  |  3.97 Tflops  |  1.33 Tflops  |  +
-|    |||| +
-|  Nombre de coeurs |  2496  |  2304  |  512  |  +
-|    |||| +
-|  Fréquence coeurs |  0.706 GHz  |  0.863 GHz  |  1.3 GHz  |  +
-|    |||| +
-|  Mémoire |  5 GB  |  3 GB  |  6 GB  |  +
-|    |||| +
-|  Bande passante max (ECC off)  |  208 GB/s  |  288.4 GB/s  |  177.6 GB/s  | +
-|    |||| +
-|  ECC (Error-correcting code memory)|  oui  |  non  |  oui  |  +
-|    |||| +
-|  Consommation max |  225 W  |  250 W    250 W  |  +
-===== Logiciel disponible au PSMN =====  +
- +
-Le soft nécessaire au fonctionnement de ces cartes est installé avec les paquets Debian. Il s'agit de : +
-  * drivers +
-  * librarie CUDA +
-  * CUDA SDK (optionnel) +
- +
- +
-===== Files d'attente =====  +
- +
-Les files d'attente pour l'utilisation des GPUs sont décrites sur la page : [[documentation:clusters:batch|Les files d'attente]] +
- +
-===== Benchmarks =====+
  
 Plusieurs tests de fonctionnement et de performance de ces cartes sont présentés :  Plusieurs tests de fonctionnement et de performance de ces cartes sont présentés : 
Ligne 92: Ligne 49:
  
  
-Uns autre possibilité (hors commandes Linux) pour détecter la présence et le type de GPUS NVIDIA est de faire appel au programme deviceQuery dont le source .cpp est contenu dans la suite NVIDIA_GPU_Computing_SDK (devenue NVIDIA_CUDA-x.y_Samples dans les versions x.y récentes). Après compilation, ce programme détecte les périphériques "CUDA-capable" du système. Ci-après le output de cette exécution sur un noueud avec des GPUs NVIDIA K20 :+**Uns autre possibilité** (hors commandes Linux) pour détecter la présence et le type de GPUS NVIDIA est de faire appel au programme deviceQuery dont le source .cpp est contenu dans la suite NVIDIA_GPU_Computing_SDK (devenue NVIDIA_CUDA-x.y_Samples dans les versions x.y récentes). Après compilation, ce programme détecte les périphériques "CUDA-capable" du système. Ci-après le output de cette exécution sur un noueud avec des GPUs NVIDIA K20 :
  
 <code bash>  <code bash> 
Ligne 178: Ligne 135:
 </code> </code>
  
-==== Tests de la bande passante ====+==== Test de la bande passante ==== 
 + 
 +Un autre test fourni avec NVIDIA_GPU_Computing_SDK est le programme bandwidthTest. Après la compilation du programme source .cpp, son exécution donne la largeur de la bande pour trois transferts qui doivent être pris en compte dans le développement de codes CUDA : 
 +  * transfert depuis CPU sur le GPU 
 +  * transfert depuis GPU sur le CPU 
 +  * transfert depuis GPU sur le GPU (intra GPU) 
 +Ci-dessous la sortie complète de ce programme sur le même noeud que précédemment : 
 + 
 +<code bash>  
 +c82gpgpu34:~> cd NVIDIA_GPU_Computing_SDK 
 +c82gpgpu34:~> .C//bin/linux/release/bandwidthTest  
 + 
 +./C/bin/linux/release/bandwidthTest Starting... 
 + 
 +Running on... 
 + 
 + Device 0: Tesla K20m 
 + Quick Mode 
 + 
 + Host to Device Bandwidth, 1 Device(s), Paged memory 
 +   Transfer Size (Bytes) Bandwidth(MB/s) 
 +   33554432 3819.7 
 + 
 + Device to Host Bandwidth, 1 Device(s), Paged memory 
 +   Transfer Size (Bytes) Bandwidth(MB/s) 
 +   33554432 3381.9 
 + 
 + Device to Device Bandwidth, 1 Device(s) 
 +   Transfer Size (Bytes) Bandwidth(MB/s) 
 +   33554432 143586.3 
 + 
 +</code>
  
-==== Tests de performance des bibliothèques d'algèbre linéaire ==== 
 ==== Tests de performance de la composante FFT de Cuda ==== ==== Tests de performance de la composante FFT de Cuda ====
 +
 +
 +==== Tests de performance des bibliothèques d'algèbre linéaire ====
 ==== Tests de performance des codes "maison" portés sur GPUs ==== ==== Tests de performance des codes "maison" portés sur GPUs ====
  des codes "maison" portés sur GPUs ([[http://www.cbp.ens-lyon.fr/doku.php?id=developpement:productions:logiciels:anisotropicblur|Anisotropic Blur]] )  des codes "maison" portés sur GPUs ([[http://www.cbp.ens-lyon.fr/doku.php?id=developpement:productions:logiciels:anisotropicblur|Anisotropic Blur]] )