Installation de Micmac avec support CUDA sous Archlinux
L'installation de Micmac sous Archlinux n'est pas des plus simples. Alors lorsqu'on veut ajouter le support CUDA, là ça se corse !
Voici donc un petit billet qui résume l'installation de Micmac sou sArchlinux avec le support CUDA
Auparavant il convient de tester l'installation de CUDA.
En ce moment nous sommes avec gcc6 et il y a beaucoup de problèmes sur les compilations notamment pour le CUDA https://wiki.archlinux.org/index.php/GPGPU#CUDA
Donc à la date où j'écris, pour avoir un cuda opérationnel, il faut installer une version de gcc antérieure. Il est possible de le faire avec le dépôt AUR (Archlinux User Repository). Il existe d'ailleurs un package Micmac mais qui n'est pas fonctionnel, il repose sur une ancienne version et ne supporte pas le CUDA
Exemple chez moi j'ai installé gcc5 :
Ensuite on va pouvoir tester CUDA mais avant il faut définir quelques variables environnement :
Voilà, nous pouvons à présent tester CUDA, on se déplace dans le répertoitre cuda et on change les droits des samples pour pouvoir les compiler sans utiliser les droits root :
Compilation des modules cuda (le j8 est le nombre de cores que j'ai sur ma machine) :
Voilà un résultat valide : le PASS à la fin
Si tout est ok, on peut poursuivre pour l'installation de Micmac
Récupération de Micmac :
Les exécutables sont dans /opt/micmac/bin/ et les libs rattachées dans /opt/micmac/lib/
Pour les prendre en compte dans les variables environnement sans avoir à saisir le chemin complet :
export PATH=$PATH:/opt/micmac/bin
echo 'export PATH=$PATH:/opt/micmac/bin' >> ~/.bash_profile
L'installation de Micmac est à présent terminée, je vous laisse le tuto du foss4g-fr auquel j'étais présent pour commencer sous Micmac
http://jmfriedt.free.fr/foss4g_2016/
Voici donc un petit billet qui résume l'installation de Micmac sou sArchlinux avec le support CUDA
Auparavant il convient de tester l'installation de CUDA.
En ce moment nous sommes avec gcc6 et il y a beaucoup de problèmes sur les compilations notamment pour le CUDA https://wiki.archlinux.org/index.php/GPGPU#CUDA
Donc à la date où j'écris, pour avoir un cuda opérationnel, il faut installer une version de gcc antérieure. Il est possible de le faire avec le dépôt AUR (Archlinux User Repository). Il existe d'ailleurs un package Micmac mais qui n'est pas fonctionnel, il repose sur une ancienne version et ne supporte pas le CUDA
Exemple chez moi j'ai installé gcc5 :
yaourt -S gcc5puis il faut faire un lien symbolique pour que ce soit pris en compte par CUDA (bien entendu, il faudra installer cuda avant avec pacman -S cuda):
sudo ln -s /usr/bin/gcc-5 /opt/cuda/bin/gcc
sudo ln -s /usr/bin/g++-5 /opt/cuda/bin/g++
Ensuite on va pouvoir tester CUDA mais avant il faut définir quelques variables environnement :
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
Voilà, nous pouvons à présent tester CUDA, on se déplace dans le répertoitre cuda et on change les droits des samples pour pouvoir les compiler sans utiliser les droits root :
cd /opt/cuda/
sudo chown $USER -R samples/
Compilation des modules cuda (le j8 est le nombre de cores que j'ai sur ma machine) :
cd /opt/cuda/samplesTest du module bandwidth :
make -j8
cd /opt/cuda/samples/bin/x86_64/linux/release
./bandwidthTest
Voilà un résultat valide : le PASS à la fin
$ ./bandwidthTest
[CUDA Bandwidth Test] - Starting...
Running on...
Device 0: GeForce GTX 780 Ti
Quick Mode
Host to Device Bandwidth, 1 Device(s)
PINNED Memory Transfers
Transfer Size (Bytes) Bandwidth(MB/s)
33554432 12246.7
Device to Host Bandwidth, 1 Device(s)
PINNED Memory Transfers
Transfer Size (Bytes) Bandwidth(MB/s)
33554432 12354.1
Device to Device Bandwidth, 1 Device(s)
PINNED Memory Transfers
Transfer Size (Bytes) Bandwidth(MB/s)
33554432 259513.2
Result = PASS
NOTE: The CUDA Samples are not meant for performance measurements. Results may vary when GPU Boost is enabled.
Si tout est ok, on peut poursuivre pour l'installation de Micmac
Récupération de Micmac :
mkdir -p /opt/micmacConfiguration :
sudo chown $USER /opt/micmac
cd /opt/micmac
cmake -DCMAKE_C_COMPILER=/usr/bin/gcc-5 \puis
-DCMAKE_CXX_COMPILER=/usr/bin/g++-5 \
-DWITH_QT4=1 \
-DCUDA_ENABLED=ON \
-DWITH_OPEN_MP=OFF \
-DCUDA_SDK_ROOT_DIR=/opt/cuda/samples/common/ \
-DCUDA_CPP11THREAD_NOBOOSTTHREAD=ON ../
make -j8
make install
Les exécutables sont dans /opt/micmac/bin/ et les libs rattachées dans /opt/micmac/lib/
Pour les prendre en compte dans les variables environnement sans avoir à saisir le chemin complet :
export PATH=$PATH:/opt/micmac/bin
echo 'export PATH=$PATH:/opt/micmac/bin' >> ~/.bash_profile
L'installation de Micmac est à présent terminée, je vous laisse le tuto du foss4g-fr auquel j'étais présent pour commencer sous Micmac
http://jmfriedt.free.fr/foss4g_2016/
Commentaires
Enregistrer un commentaire