web-dev-qa-db-fra.com

Installer Cuda sans root

Je sais que je peux installer Cuda avec les éléments suivants:

 wget http://developer.download.nvidia.com/compute/cuda/7_0/Prod/local_installers/cuda_7.0.28_linux.run
chmod + x cuda_7.0.28_linux.run 
./cuda_7 .0.28_linux.run -extract = `pwd`/nvidia_installers 
 Cd nvidia_installers 
 Sudo ./NVIDIA-Linux-x86_64-346.46.run 
 Sudo modprobe nvidia 
 Sudo./Cuda-linux64. -7.0.28-19326674.run 

Je me demandais si je pouvais installer Cuda sans root?

Merci,

9
user200340

Vous pouvez installer CUDA et compiler des programmes, mais vous ne pourrez pas les exécuter faute d'accès au périphérique.

4
tera logged out.

Merci beaucoup pour les astuces dans la question! Je veux juste le compléter avec une approche qui a fonctionné pour moi, également inspirée de this Gist et qui, espérons-le, aide dans les situations où un pilote valide est installé, et l'installation d'un CUDA plus récent sous Linux sans permissions root toujours nécessaire

TL; DR: Voici les étapes pour installer CUDA9 + CUDNN7 sur Debian et installer une version précompilée de TensorFlow1.4 sur Python2.7 pour vérifier que tout fonctionne. Tout sans privilèges root et via terminal. Devrait également fonctionner pour d'autres versions de CUDA, CUDNN, TensorFlow et Python sur d'autres systèmes Linux.


INSTALLATION

  1. Accédez au site Web officiel de NVIDIA pour CUDA (à compter de novembre 2017, CUDA9 est disponible): https://developer.nvidia.com/cuda-downloads .

  2. Sous votre distribution Linux, sélectionnez l’option runfile (local). Notez que l'indication Sudo présente dans les instructions d'installation est trompeuse, car il est possible d'exécuter ce programme d'installation sans les autorisations root. Sur un serveur, un moyen simple consiste à copier le <LINK> du bouton Download et, à n’importe quel emplacement de votre répertoire de base, à exécuter wget <LINK>. Il téléchargera le fichier <INSTALLER>.

  3. Exécutez chmod +x <INSTALLER> pour le rendre exécutable, puis exécutez-le ./<INSTALLER>.

  4. accept le CLUF, say no to driver installation et entrez un emplacement <CUDA> dans votre répertoire de base pour installer la boîte à outils et un <CUDASAMPLES> pour les exemples.

  5. Pas demandé ici, mais recommandé: Téléchargez un fichier CUDNN compatible à partir du official web (vous devez vous connecter). Dans mon cas, j'ai téléchargé le cudnn-9.0-linux-x64-v7.tgz, compatible avec CUDA9 dans le dossier <CUDNN>. Décompressez-le: tar -xzvf ....

  6. Facultatif: compiler les exemples. cd <CUDASAMPLES> && make. Il y a quelques très bons exemples et un très bon point de départ pour écrire des scripts CUDA de vous-même .

  7. (Si vous en avez déjà 5.)} _: Copiez les fichiers requis par CUDNN dans CUDA et accordez le droit de lecture à l'utilisateur (ne sachant pas si nécessaire): cp -P <CUDNN>/cuda/include/cudnn.h <CUDA>/include/ cp -P cudnn9/cuda/lib64/libcudnn* cuda9/lib64 chmod a+r cuda9/include/cudnn.h cuda9/lib64/libcudnn*

  8. Ajoutez la bibliothèque à votre environnement. Cela se fait généralement en ajoutant les deux lignes suivantes à votre fichier ~/.bashrc (dans cet exemple, le répertoire <CUDA> était ~/cuda9/:

export PATH=$HOME/cuda9/bin:$PATH export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/cuda9/lib64/


POUR TESTER RAPIDEMENT OR UTILISATEURS DE TENSORFLOW

Le moyen le plus rapide d’obtenir un TensorFlow compatible avec CUDA9 et CUDNN7 (et un moyen très rapide de le tester) consiste à télécharger un fichier wheel précompilé et à l’installer avec pip install <WHEEL>. La plupart des versions dont vous avez besoin se trouvent dans mind's repo (merci beaucoup les gars). Un test minimal qui confirme que CUDNN fonctionne également implique l'utilisation de tf.nn.conv2d :

import tensorflow as tf
x = tf.nn.conv2d(tf.ones([1,1,10,1]), tf.ones([1,5,1,1]), strides=[1, 1, 1, 1], padding='SAME')
with tf.Session() as sess:
    sess.run(x) # this should output a tensor of shape (1,1,10,1) with [3,4,5,5,5,5,5,5,4,3]

Dans mon cas, la roue que j'ai installée me demandait la bibliothèque MKL d'Intel, comme expliqué ici . Encore une fois, depuis le terminal et sans les utilisateurs root, ce sont les étapes que j'ai suivies pour installer la bibliothèque et que TensorFlow la trouve ( référence ):

  1. git clone https://github.com/01org/mkl-dnn.git
  2. cd mkl-dnn/scripts && ./prepare_mkl.sh && cd ..
  3. mkdir -p build && cd build
  4. cmake -D CMAKE_INSTALL_PREFIX:PATH=<TARGET_DIR_IN_HOME> ..
  5. make # cela prend un certain temps
    1. make doc # faire ceci facultativement si vous avez doxygen
  6. make test # prend également un certain temps
  7. make install # installs into <TARGET_DIR_IN_HOME>
  8. ajoutez ce qui suit à votre ~/.bashrc: export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<TARGET_DIR_IN_HOME>/lib

J'espère que cela t'aides!
Andres

18
fr_andres

Vous pouvez installer avec conda avec la commande suivante. 

conda install -c anaconda cudatoolkit

Mais vous devez avoir des accès préalables au périphérique (GPU) 

2
Dheeraj M Pai