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
formation:insa2018gpu [2018/12/08 07:37] – [Exploitations de xGEMM] equemeneformation:insa2018gpu [2018/12/09 09:42] (Version actuelle) – [Implémentation C/OpenCL] equemene
Ligne 821: Ligne 821:
 {{:formation:opencluster2_qpu1024.png?direct&400|}} {{:formation:opencluster2_qpu1024.png?direct&400|}}
  
-Cette seconde expérience montre de manière assez spectaculaire que les GPU ne montrent leur puissance "que" pour des régimes de parallélisme élevé. Notons aussi que les implémentations sur CPU ont des performances très très disparates.+Cette seconde expérience montre de manière assez spectaculaire que les GPU ne dévoilent leur puissance "que" pour des régimes de parallélisme élevé. Notons aussi que les implémentations sur CPU ont des performances très très disparates.
  
 <note warning> <note warning>
Ligne 988: Ligne 988:
   * ''Pi_FP32_MWC_xPU_OpenCL_1_128_1_1_1000000000_Device0_InMetro_opencluster2''   * ''Pi_FP32_MWC_xPU_OpenCL_1_128_1_1_1000000000_Device0_InMetro_opencluster2''
  
-Nous ppuvons ensuite exploiter l'outil simple ''gnuplot'' pour afficher nos résultats :+Nous pouvons ensuite exploiter l'outil simple ''gnuplot'' pour afficher nos résultats :
 <code> <code>
 gnuplot gnuplot
Ligne 1032: Ligne 1032:
 La seule manière de retrouver une performance comparable en CUDA est de solliciter le second étage de parallélisme des GPU, les //Threads//. Avec la commande suivante, avec 1024 Threads, nous plafonnons à **198 Gitops** :<code>python PiXPU.py -g CUDA -d 0 -b $((3584*4)) -e $((3584*4)) -f 1024 -l 1024 -r 3 -i 1000000000000</code> La seule manière de retrouver une performance comparable en CUDA est de solliciter le second étage de parallélisme des GPU, les //Threads//. Avec la commande suivante, avec 1024 Threads, nous plafonnons à **198 Gitops** :<code>python PiXPU.py -g CUDA -d 0 -b $((3584*4)) -e $((3584*4)) -f 1024 -l 1024 -r 3 -i 1000000000000</code>
  
-Et ce n'est pas tout ! La distribtion Debian utilisée intègre par défaut un CUDA version 8. Pour l'intégration d'applications de //Deep Learning//, nous avons été obligé d'intégrer un CUDA version 9. Nous pouvons charger l'environnement pour exploiter cette version avec la commande :<code>module load cuda/9.0</code>+Et ce n'est pas tout ! La distribution Debian utilisée intègre par défaut un CUDA version 8. Pour l'intégration d'applications de //Deep Learning//, nous avons été obligé d'intégrer un CUDA version 9. Nous pouvons charger l'environnement pour exploiter cette version avec la commande :<code>module load cuda/9.0</code>
  
 En relançant le calcul précédent, nous parvenons à **271 Gitops** soit plus que l'implémentation OpenCL. En relançant le calcul précédent, nous parvenons à **271 Gitops** soit plus que l'implémentation OpenCL.
Ligne 1269: Ligne 1269:
 ==== Intégration et exploitation du code PKDGRAV3 ==== ==== Intégration et exploitation du code PKDGRAV3 ====
  
-Le code PKDGRAV3 est une logiciel de simulation hydrodynamique à la large couverture médiatique en juin 2017. Présenté comme exploitant massivement les GPU, il est disponible sur [[https://bitbucket.org/dpotter/pkdgrav3/|bitbucket]].+Le code PKDGRAV3 est un logiciel de simulation hydrodynamique à la large couverture médiatique en juin 2017. Présenté comme exploitant massivement les GPU, il est disponible sur [[https://bitbucket.org/dpotter/pkdgrav3/|bitbucket]].
  
 Le code source est accessible par ''git'' à l'adresse : https://bitbucket.org/dpotter/pkdgrav3.git Le code source est accessible par ''git'' à l'adresse : https://bitbucket.org/dpotter/pkdgrav3.git
formation/insa2018gpu.1544254663.txt.gz · Dernière modification : (modification externe)