Chapter 5.1 : Le NVidia HPC_SDK

Le HPC_SDK de NVidia est un paquet binaire qui regroupe toutes les bibliothèques et les outils NVidia utilent pour développer des programmes HPC.

Les binaires sont disponibles sur le site de NVidia.

Il est composé, entre autres, de :

  • 34 compilateurs (nvc, nvcc, nvc++, nvfortran, pgi, etc)
  • Des bibliothèques de calcul et de parallélisation (CUDA, cublas, cuFFT, Thrust, MPI, etc)
  • Des outils de profilage (nsigh, cuda-gdb, nvprof, etc)


La figure 16 résume bien la situation.

nothing

Figure 16 : Illustration du HPC_SDK présenté lors d'une session à la GTC 2021.



Une nouveauté très importante annoncée lors de la GTC de novembre 2020 concerne nvc++ dont nous parlerons plus dans la suite de ce cours.

Conseil : si vous insistez auprès de votre administrateur système préféré pour avoir une installation du HPC_SDK sur votre centre de calcul préféré, pensez à lui dire qu'il faut indiquer des compilteurs à jour noteEnfin qui peuvent compiler du C++17, donc au moins G++8. dans le fichier /opt/nvidia/hpc_sdk/Linux_x86_64/XXX/compilers/bin/localrc sinon rien ne compilera. Ensuite votre administrateur système préféré pourra, par exemple, lancer la commande :
/opt/nvidia/hpc_sdk/Linux_x86_64/21.9/compilers/bin/makelocalrc /opt/nvidia/hpc_sdk/Linux_x86_64/21.9/compilers/bin/ -x \
	-d /opt/nvidia/hpc_sdk/Linux_x86_64/21.9/compilers/bin/ \
	-gcc /opt/rh/devtoolset-11/root/usr/bin/x86_64-redhat-linux-gcc \
	-gpp /opt/rh/devtoolset-11/root/usr/bin/x86_64-redhat-linux-g++ \
	-g77 /opt/rh/devtoolset-11/root/usr/bin/gfortran


C'est une commande à rallonge mais ça fonctionne et votre administrateur préféré en tape toute la journée noteJe tiens à préciser que cette blague est de Frédérique, et non de moi, donc je cite.. Et cela permet de spécifier, les emplacements des compilateurs C, C++17 et Fortran.


Conseil : Si vous voulez utiliser le HPC_SDK sur votre laptop et qu'il est à jour, vous n'aurez, a priori, rien a faire.