{{tag> Trusty Xenial carte_graphique programmation nvidia}} ---- ====== CUDA ====== **Tout ce qui concerne OpenCL est à enrichir.** {{:nvidia:nvidia_cuda_logo.jpg?100&nolink |Cuda}} CUDA est une architecture de traitement parallèle développée par NVIDIA permettant de décupler les performances de calcul du système en exploitant la puissance des processeurs graphiques (GPU). Cette page explique comment installer ce qui est nécessaire au bon fonctionnement de CUDA. Cette installation permet également d'utiliser des applications [[wpfr>OpenCL|OpenCL]]. ===== Installation ===== sudo apt install nvidia-cuda-toolkit ===== Installation pour Ubuntu 16.04 ===== Sous Ubuntu Xenial 16.04 Cuda s'installe en même temps que le reste des drivers de votre carte Nvidia si vous utilisez le driver propriétaire. [[https://doc.ubuntu-fr.org/nvidia|Installer pilote Nvidia sur Ubuntu]]. Vous pouvez installer le toolkit cuda directement : [[apt://nvidia-cuda-toolkit|NVIDIA CUDA development toolkit]] (paquet nvidia-cuda-toolkit). ===== Installation de la version 7.5.18 pour Ubuntu 14.04 sur portable ===== ==== Installation de cuda 7.5 ==== Sur les ordinateurs portables la technologie **optimus** est souvent utilisée, **si vous installez cuda avec les options par défaut vous risquez de vous retrouver avec un écran noir au démarrage** ( l'installation standard désactive la carte intégrée qui est utilisée pour "afficher" l'écran ). Par défaut l'installation avec le paquet deb du site nvidia va réinstaller **la version 3.52 du driver nvidia**, et bloquer optimus. Avec cette méthode vous pouvez utiliser une autre version du driver [[https://doc.ubuntu-fr.org/nvidia#via_un_ppa|nvidia plus récente]]. Pour installer cuda , il va donc falloir utiliser le .run du site Nvidia : [[https://developer.nvidia.com/cuda-downloads]] Ou directement l'installeur en version 64 bit pour x86_64 : [[http://developer.download.nvidia.com/compute/cuda/7.5/Prod/local_installers/cuda_7.5.18_linux.run]] Il faut installer les kernel headers pour l'installation de cuda : sudo apt-get install linux-headers-$(uname -r) Il est maintenant nécessaire de redémarrer sans lancer le serveur X , en runlevel 3. Au démarrage choisissez les options de démarrage d'Ubuntu et tapez **e** pour pouvoir les modifier temporairement , remplacez **quiet splash** par **text** , et démarrez avec F10 ou ctrl-x. Vous êtes maintenant en init 3. Allez dans le dossier ou vous avez téléchargé l'installeur cuda et installez avec les options suivantes, pour ne pas vous retrouver avec un écran noir au démarrage, **--no-opengl-libs** Pour cuda 7.5.18 la commande est : sudo sh cuda_7.5.18_linux.run --no-opengl-libs L'installeur va vous guider. Les options par défaut sont un bon choix. Redémarrez votre ordinateur avec sudo reboot Vous pouvez ajouter le path de cuda dans votre **.bash.rc** si vous en avez besoin, il faut ajouter : ##CUDA export CUDA_HOME=/usr/local/cuda-7.5 export LD_LIBRARY_PATH=${CUDA_HOME}/lib64 PATH=${CUDA_HOME}/bin:${PATH} export PATH Modifier les réglages de blender dans les préférences utilisateur pour utiliser Cuda, dans l'onglet système. ==== Désinstallation de cuda 7.5 ==== Un script de désinstallation est créé a l'installation, il suffit de l'utiliser pour désinstaller cuda. Par défaut il se trouve dans :** /usr/local/cuda-7.5/bin** Il suffit de lancer cette commande pour désinstaller : sudo /usr/local/cuda-7.5/bin/uninstall_cuda_7.5.pl ---- ===== Pré-requis ===== * Soyez sûr que votre carte graphique supporte Cuda en vous référant à [[http://www.nvidia.fr/object/cuda_gpus_fr.html|cette page]]. * Il est nécessaire d'avoir un pilote Nvidia __propriétaire__ d'une version supérieure ou égale à 295.xx (disponible dans les dépôts). Vous pouvez l'installer [[:nvidia#Installation du pilote propriétaire|manuellement]] ou [[nvidia#methode_automatique|depuis les dépôts]], cette dernière méthode étant à privilégier. * Avoir [[:tutoriel:comment_installer_un_paquet|installé les paquets]] **[[apt>libxi-dev,libxmu-dev,freeglut3-dev,build-essential,binutils-gold|libxi-dev, libxmu-dev, freeglut3-dev, build-essential, et binutils-gold]]**.\\ Pour faire simple, avec l'outil [[:apt-get]], dans le [[:terminal]] tapez : sudo apt-get install libxi-dev libxmu-dev freeglut3-dev build-essential binutils-gold ===== Installation de CUDA ===== Il va falloir installer deux programmes: "CUDA Toolkit" et "GPU Computing SDK".\\ Le **GPU Computing SDK** fournit des exemples de codes sur lesquels vous pouvez vous baser pour faire du développement: ce [[wpfr>Kit_de_développement|SDK]] est donc inutile si vous ne prévoyez pas de programmer avec Cuda. Cependant, vous l'installerez quand même afin de [[#test|vérifier que Cuda fonctionne bien]]. **Installation simplifiée** \\ Nvidia met désormais à disposition des .deb et des rpm afin d'installer Cuda, ce qui facilite grandement la procédure d'installation. Se rendre https://developer.nvidia.com/cuda-downloads, télécharger le .deb correspondant à votre version d'ubuntu et suivre la procédure d'installation décrite sur [[http://docs.nvidia.com/cuda/cuda-getting-started-guide-for-linux/index.html|cette page]]. N'oubliez pas de faire sudo apt-get update && sudo apt-get install cuda ==== Téléchargements ==== Téléchargez sur votre Bureau les programmes selon votre [[:architecture matérielle]]: * __32bits__:cd ~/Bureau wget http://developer.download.nvidia.com/compute/cuda/4_2/rel/toolkit/cudatoolkit_4.2.9_linux_32_ubuntu11.04.run wget http://developer.download.nvidia.com/compute/cuda/4_2/rel/sdk/gpucomputingsdk_4.2.9_linux.run * __64bits__:cd ~/Bureau wget http://developer.download.nvidia.com/compute/cuda/4_2/rel/toolkit/cudatoolkit_4.2.9_linux_64_ubuntu11.04.run wget http://developer.download.nvidia.com/compute/cuda/4_2/rel/sdk/gpucomputingsdk_4.2.9_linux.run La version pour [[:natty|Ubuntu 11.04]] fonctionne sous [[:oneiric|Ubuntu 11.10]], [[:precise|12.04]] et [[:ubuntu| 13.04]]. ==== Installation du Toolkit ==== Depuis votre dossier **Bureau**, changez les [[:droits]] du fichier **cudatoolkit** [[#Téléchargements|précédemment téléchargé]] puis exécutez-le en [[:sudo|superutilisateur]]: cd ~/Bureau chmod +x cudatoolkit_4.2.9_linux_* sudo ./cudatoolkit_4.2.9_linux_* Lorsqu'il vous demandera: Enter install path (default /usr/local/cuda, '/cuda' will be appended): tapez **/opt**. ==== Installation du SDK ==== Comme [[#Installation du Toolkit|précédemment]], depuis votre dossier **Bureau**, changez les [[:droits]] du fichier **gpucomputingsdk** [[#Téléchargements|précédemment téléchargé]] puis exécutez-le en utilisateur normal cette fois-ci : cd ~/Bureau chmod +x gpucomputingsdk_4.2.9_linux.run ./gpucomputingsdk_4.2.9_linux.run Lorsqu'il vous demandera: Enter install path (default ~/NVIDIA_GPU_Computing_SDK): Faites **[entrée]** pour utiliser le chemin par défaut, et tapez une fois de plus **/opt** lorsqu'il vous demandera: Enter CUDA install path (default /usr/local/cuda): ==== Préparation ==== Mettez à jour les variables, en tapant dans le [[:terminal]]: export PATH=$PATH:/opt/cuda/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib:/opt/cuda/lib64 echo 'export PATH=$PATH:/opt/cuda/bin' >> ~/.bash_profile echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib:/opt/cuda/lib64' >> ~/.bash_profile ==== Compilation du SDK ==== [[:compilation|Compilez]] les applications exemples proposées par le SDK, qui vont vous servir dans la [[#test|section suivante]] à tester le bon fonctionnement de Cuda: cd ~/NVIDIA_GPU_Computing_SDK/C LINKFLAGS=-L/usr/lib/nvidia-current/ make cuda-install=/opt/cuda ==== Test ==== Le dossier **~/NVIDIA_GPU_Computing_SDK/C/bin/linux/release/** contient de petites applications qui servent d'exemple d'utilisation de Cuda. Lancez une de ces applications : ~/NVIDIA_GPU_Computing_SDK/C/bin/linux/release/./fluidsGL {{:nvidia:Cuda_test.png?250|Test de Cuda}} Comme vous pouvez le voir, Cuda fonctionne parfaitement. Vous pouvez aussi tester un programme exploitant OpenCL (qu'il va falloir compiler): cd ~/NVIDIA_GPU_Computing_SDK/OpenCL/ make cd ~/NVIDIA_GPU_Computing_SDK/OpenCL/bin/linux/release ./oclSimpleGL Vous pouvez à présent faire du GPU Computing, et aider la science avec [[Boinc]] par exemple. ==== Nettoyage ==== Maintenant que Cuda est installé, les deux fichiers d'installation ne nous sont plus nécessaires, vous pouvez les supprimer. cd ~/Bureau rm cudatoolkit_4.2.9_linux_* rm gpucomputingsdk_4.2.9_linux.run Si vous ne voulez plus du SDK, vous pouvez le supprimer également: rm -r ~/NVIDIA_GPU_Computing_SDK ===== Désinstallation de CUDA ===== Si vous souhaitez effacer toute trace de Cuda, [[:tutoriel:comment_supprimer_un_fichier|supprimez]] les dossiers **/opt/cuda** (avec les droits [[:sudo|root]]) et **~/NVIDIA_GPU_Computing_SDK**: rm -r ~/NVIDIA_GPU_Computing_SDK sudo rm -rf /opt/cuda et [[:tutoriel:comment_modifier_un_fichier|ouvrez]] le [[:fichier_cache|fichier caché]] dans votre Dossier Personnel **.bash_profile** pour y effacer les lignes suivantes: export PATH=$PATH:/opt/cuda/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib:/opt/cuda/lib64 ===== Voir aussi ===== * [[http://developer.download.nvidia.com/compute/DevZone/docs/html/C/doc/CUDA_Getting_Started_Linux.pdf|CUDA Getting Started Linux]] (EN) * [[http://www.nvidia.fr/object/what_is_cuda_new_fr.html|Qu’est-ce que CUDA ?]] * [[wpfr>OpenCL|OpenCL]] * [[nvidia|Cartes graphiques Nvidia]] * [[nvidia#Installation du pilote propriétaire|Installation manuelle des pilotes propriétaires NVIDIA]] ---- //Contributeurs principaux : rustyBSD//