Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
cuda [Le 11/03/2012, 11:31] rustyBSD [Compilation] |
cuda [Le 11/09/2022, 12:04] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>programmation nvidia}} | + | {{tag>Trusty Xenial carte_graphique programmation nvidia}} |
---- | ---- | ||
+ | {{ :nvidia:nvidia_cuda_logo.jpg?90&nolink|Cuda}} | ||
+ | ====== CUDA ====== | ||
- | ====== Installer 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). |
- | <note info>Cette page a été entièrement réécrite le 10/03/2012. La version du pilote Nvidia à cette date est 295.20, et celle de CUDA 4.1. Les versions d'Ubuntu supportées sont 11.04 et 11.10.</note> | + | Cette page explique comment installer ce qui est nécessaire au bon fonctionnement de CUDA. Cette installation permet également d'utiliser des applications [[opencl|OpenCL]] (cf [[wpfr>OpenCL|OpenCL]]). |
- | {{:nvidia: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). | + | ===== Installation ===== |
+ | <note>Sous [[:xenial|Ubuntu 16.04]], Cuda s'installe en même temps que le reste des pilotes de votre carte Nvidia si vous utilisez le [[:nvidia|pilote propriétaire]].</note> | ||
+ | Sinon [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **[[apt>nvidia-cuda-toolkit]]**. | ||
+ | ==== Installation de la dernière version pour Ubuntu 14.04 ==== | ||
- | Cette page explique comment installer ce qui est nécessaire au bon fonctionnement de CUDA. La section sur l'installation du pilote est tirée de [[nvidia.run|cette page]]. | ||
- | ===== Pré-requis ===== | + | 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 ). |
- | Soyez sûr que votre carte graphique supporte Cuda. Référez-vous à cette page : [[http://www.nvidia.fr/object/cuda_gpus_fr.html]] | + | <note tip>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 [[:nvidia#via_un_ppa|nvidia plus récente]]. | ||
+ | </note> | ||
+ | Pour installer cuda , il va donc falloir utiliser le .run du [[https://developer.nvidia.com/cuda-downloads|site Nvidia]] | ||
- | Même si nous les désinstallerons juste après, installez les drivers Nvidia propriétaires depuis les dépôts (**c'est important !**). | + | Ou directement l'installeur en version 64 bit pour x86_64 : [[https://developer.download.nvidia.com/compute/cuda/7.5/Prod/local_installers/cuda_7.5.18_linux.run]] |
- | Par défaut, Ubuntu utilise un pilote nommé **nouveau**. Ce pilote entrera en conflit avec le pilote que nous allons installer, il est donc nécessaire de le désactiver. Dans le terminal, tapez: | + | Il faut installer les kernel headers pour l'installation de cuda : <code>sudo apt-get install linux-headers-$(uname -r)</code> |
- | <code> | + | |
- | sudo echo "blacklist nouveau" >> /etc/modprobe.d/blacklist-nouveau.conf | + | |
- | sudo echo "options nouveau modeset=0" >> /etc/modprobe.d/blacklist-nouveau.conf | + | |
- | </code> | + | |
- | Ensuite, __**redémarrez votre ordinateur**__ (j'insiste bien là-dessus). | + | 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. | ||
- | Une fois l'ordinateur redémarré et la session ouverte, on efface les anciens pilotes Nvidia (pour éviter des conflits avec le nouveau), en tapant dans le terminal: | + | Vous êtes maintenant en init 3. |
- | <code>sudo apt-get remove --purge nvidia*</code> | + | 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 finir, il faut que vous installiez les paquets **[[apt://libxi-dev|libxi-dev]]**, **[[apt://libxmu-dev|libxmu-dev]]**, **[[apt://freeglut3-dev|freeglut3-dev]]**, **[[apt://build-essential|build-essential]]**, et **[[apt://binutils-gold|binutils-gold]]**. Pour faire simple, dans le **terminal** tapez: | + | Pour cuda 7.5.18 la commande est : |
- | <code> | + | <code>sudo sh cuda_7.5.18_linux.run --no-opengl-libs</code> |
- | sudo apt-get install libxi-dev libxmu-dev freeglut3-dev build-essential binutils-gold | + | |
- | </code> | + | |
- | ===== Installation du pilote ===== | + | L'installeur va vous guider. Les options par défaut sont un bon choix. |
- | Il est nécessaire d'avoir le __**dernier**__ pilote Nvidia __propriétaire__ disponible (à ce jour la version **295.20**). | + | |
- | Rendez-vous à cette page : [[http://www.nvidia.fr/Download/indexsg.aspx?lang=fr]], et téléchargez le pilote adapté à votre version de Linux et votre carte graphique. | + | Redémarrez votre ordinateur avec <code>sudo reboot</code> |
- | Une fois téléchargé, il va falloir éteindre le serveur X. | + | |
- | Pour ce faire, faites **[Ctrl+Alt+F1]**, et dans la console loguez-vous avec votre nom d'utilisateur et mot de passe habituels. Ensuite, tapez : | + | Vous pouvez ajouter le path de cuda dans votre **.bash.rc** si vous en avez besoin, il faut ajouter : |
- | <code> | + | <file>##CUDA |
- | sudo /etc/init.d/lightdm stop | + | export CUDA_HOME=/usr/local/cuda-7.5 |
- | </code> | + | export LD_LIBRARY_PATH=${CUDA_HOME}/lib64 |
- | Allez dans le dossier où vous avez téléchargé le pilote (par défaut **~/Téléchargements**), changez les permissions et exécutez-le avec les droits superutilisateur : | + | |
- | <code> | + | PATH=${CUDA_HOME}/bin:${PATH} |
- | cd ~/Téléchargements | + | export PATH</file> |
- | chmod +x NVIDIA-Linux-* | + | |
- | sudo ./NVIDIA-Linux-* | + | |
- | </code> | + | |
- | L'installation se lance. Acceptez la licence affichée au début (de toute façon, vous n'avez pas le choix). | + | |
- | Répondez **Yes** s'il vous demande : | + | Modifier les réglages de blender dans les préférences utilisateur pour utiliser Cuda, dans l'onglet système. |
- | <code>The distribution-provided pre-install script failed ! Continue anyway ?</code> | + | |
- | Répondez **Yes** s'il vous demande : | + | === Désinstallation de cuda 7.5 === |
- | <code>Would you like to run the nvidia-xconfig utility [...] ?</code> | + | |
- | Répondez **Yes** s'il vous demande : | + | Un script de désinstallation est créé a l'installation, il suffit de l'utiliser pour désinstaller cuda. |
- | <code>Install NVIDIA's 32-bit compatibility OpenGL libraries ?</code> | + | Par défaut il se trouve dans :** /usr/local/cuda-7.5/bin** |
+ | Il suffit de lancer cette commande pour désinstaller : | ||
+ | <code>sudo /usr/local/cuda-7.5/bin/uninstall_cuda_7.5.pl</code> | ||
- | Et faites **Ok** lorsqu'il vous dira que l'installation est terminée. | ||
- | Pour finir on relance le serveur X en tapant : | ||
- | <code> | ||
- | sudo /etc/init.d/lightdm start | ||
- | </code> | ||
- | |||
- | ===== Installation de CUDA ===== | ||
- | Il va falloir installer deux programmes : "CUDA Toolkit" et "GPU Computing SDK". | ||
- | |||
- | ==== Téléchargements ==== | ||
- | On télécharge les programmes en les enregistrant sur le bureau. | ||
- | |||
- | 32bits : | ||
- | <code> | ||
- | cd ~/Bureau | ||
- | wget http://developer.download.nvidia.com/compute/cuda/4_1/rel/toolkit/cudatoolkit_4.1.28_linux_32_ubuntu11.04.run | ||
- | wget http://developer.download.nvidia.com/compute/cuda/4_1/rel/sdk/gpucomputingsdk_4.1.28_linux.run | ||
- | </code> | ||
- | |||
- | 64bits : | ||
- | <code> | ||
- | cd ~/Bureau | ||
- | wget http://developer.download.nvidia.com/compute/cuda/4_1/rel/toolkit/cudatoolkit_4.1.28_linux_64_ubuntu11.04.run | ||
- | wget http://developer.download.nvidia.com/compute/cuda/4_1/rel/sdk/gpucomputingsdk_4.1.28_linux.run | ||
- | </code> | ||
- | |||
- | La version pour Ubuntu 11.04 fonctionne sous Ubuntu 11.10. | ||
- | |||
- | ==== Installation du Toolkit ==== | ||
- | On va dans **Bureau**, on change les droits du fichier cudatoolkit téléchargé, et on l'exécute en superutilisateur : | ||
- | <code> | ||
- | cd ~/Bureau | ||
- | chmod +x cudatoolkit_4.1.28_linux_* | ||
- | sudo ./cudatoolkit_4.1.28_linux_* | ||
- | </code> | ||
- | |||
- | Lorsqu'il vous demandera : | ||
- | |||
- | <code>Enter install path (default /usr/local/cuda, '/cuda' will be appended):</code> | ||
- | faites **[entrée]** (pour utiliser le chemin par défaut, soit /usr/local/cuda). | ||
- | |||
- | ==== Installation du SDK ==== | ||
- | Comme précédemment, on va dans **Bureau**, on change les droits du fichier gpucomputingsdk téléchargé, et on l'exécute en utilisateur normal cette fois-ci : | ||
- | <code> | ||
- | cd ~/Bureau | ||
- | chmod +x gpucomputingsdk_4.1.28_linux.run | ||
- | ./gpucomputingsdk_4.1.28_linux.run | ||
- | </code> | ||
- | |||
- | Lorsqu'il vous demandera : | ||
- | <code>Enter install path (default ~/NVIDIA_GPU_Computing_SDK):</code> | ||
- | faites **[entrée]** pour utiliser le chemin par défaut, et faites de même lorsqu'il vous demandera : | ||
- | <code>Enter CUDA install path (default /usr/local/cuda):</code> | ||
- | |||
- | ==== Préparation ==== | ||
- | On met à jour les variables, en tapant dans le **terminal** : | ||
- | <code> | ||
- | export PATH=$PATH:/usr/local/cuda/bin | ||
- | export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib:/usr/local/cuda/lib64 | ||
- | echo 'export PATH=$PATH:/usr/local/cuda/bin' >> ~/.bashrc | ||
- | echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib:/usr/local/cuda/lib64' >> ~/.bashrc | ||
- | </code> | ||
- | Puis on modifie le fichier **/usr/local/cuda/include/host_config.h** à la ligne 80, comme ceci : | ||
- | |||
- | <code>#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 7)</code> | ||
- | |||
- | ==== Compilation ==== | ||
- | On finit par compiler. | ||
- | |||
- | 32bits: | ||
- | <code> | ||
- | cd ~/NVIDIA_GPU_Computing_SDK/C | ||
- | LINKFLAGS=-L/usr/lib/nvidia-current/ make | ||
- | </code> | ||
- | 64bits: | ||
- | <code> | ||
- | cd ~/NVIDIA_GPU_Computing_SDK/C | ||
- | LINKFLAGS=-L/usr/lib32/nvidia-current/ make | ||
- | </code> | ||
- | ==== Tester Cuda ==== | + | ===== Désinstallation de CUDA ===== |
- | Pour vérifier que Cuda fonctionne bien, on lance une application utilisant justement 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**: |
<code> | <code> | ||
- | ~/NVIDIA_GPU_Computing_SDK/C/bin/linux/release/./fluidsGL | + | rm -r ~/NVIDIA_GPU_Computing_SDK |
+ | sudo rm -rf /opt/cuda | ||
</code> | </code> | ||
+ | et [[:tutoriel:comment_modifier_un_fichier|ouvrez]] le [[:fichier_cache|fichier caché]] dans votre Dossier Personnel **.bash_profile** pour y effacer les lignes suivantes: | ||
+ | <file> | ||
+ | export PATH=$PATH:/opt/cuda/bin | ||
+ | export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib:/opt/cuda/lib64 | ||
+ | </file> | ||
===== Voir aussi ===== | ===== Voir aussi ===== | ||
- | * [[http://developer.download.nvidia.com/compute/DevZone/docs/html/C/doc/CUDA_Getting_Started_Linux.pdf]] | + | * [[https://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]] | + | * [[http://www.nvidia.fr/object/what_is_cuda_new_fr.html|Qu’est-ce que CUDA ?]] |
+ | * [[wpfr>OpenCL|OpenCL]] | ||
* [[nvidia|Cartes graphiques Nvidia]] | * [[nvidia|Cartes graphiques Nvidia]] | ||
- | * [[nvidia.run|Installation manuelle des pilotes propriétaires NVIDIA]] | + | * [[nvidia#Installation du pilote propriétaire|Installation manuelle des pilotes propriétaires NVIDIA]] |
---- | ---- | ||
- | //Contributeurs principaux : rustyBSD// | + | //Contributeurs principaux : rustyBSD// |