Я знаю, что могу установить Cuda со следующим:

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-rel-7.0.28-19326674.run 

Просто интересно, могу ли я установить Cuda без рута?

Благодарность,

22
user200340 8 Сен 2016 в 01:13

3 ответа

Лучший ответ

Вы можете установить CUDA и компилировать программы, но вы не сможете запускать их из-за отсутствия доступа к устройству.

3
tera logged out. 7 Сен 2016 в 22:30

Обновление Пользовательский интерфейс установки для 10.1 изменен. Следующие работы:

  • Отмените установку драйвера (нажав на нем ENTER)
  • Измените options -> root install path на каталог, отличный от sudo.
  • Нажмите A в строке, отмеченной +, чтобы получить доступ к дополнительным параметрам. Снимите выделение create symbolic link и измените toolkit install path.
  • Теперь установка должна работать без прав root

Большое спасибо за подсказки в вопросе! Я просто хочу дополнить его подходом, который сработал для меня, также вдохновленный этой сутью и этим Надеюсь, это поможет в ситуациях, когда установлен действующий драйвер и по-прежнему требуется установка более новой версии CUDA в Linux без прав root .

TL; DR: Вот шаги по установке CUDA9 + CUDNN7 в Debian и установке предварительно скомпилированной версии TensorFlow1.4 на Python2.7, чтобы проверить, что все работает. Все без рут-привилегий и через терминал. Также должен работать для других версий CUDA, CUDNN, TensorFlow и Python в других системах Linux.


УСТАНОВКА

  1. Перейдите на сайт официального релиза NVIDIA для CUDA (по состоянию на ноябрь 2017 года CUDA9 отсутствует): https: // developer .nvidia.com / cuda-downloads.

  2. В вашем дистрибутиве Linux выберите опцию runfile (local). Обратите внимание, что указание sudo в инструкциях по установке вводит в заблуждение, так как этот установщик можно запустить без прав root . На сервере один простой способ - скопировать <LINK> кнопки Download и в любом месте вашего домашнего каталога запустить wget <LINK>. Он загрузит файл <INSTALLER>.

  3. Запустите chmod +x <INSTALLER>, чтобы сделать его исполняемым, и выполните его ./<INSTALLER>.

  4. accept лицензионное соглашение, say no to dr для установки и укажите место <CUDA> в вашем домашнем каталоге для установки набора инструментов и <CUDASAMPLES> для образцов.

  5. Здесь не спрашивают, но рекомендуется : загрузите совместимый файл CUDNN с официального сайта ( вам необходимо авторизоваться). В моем случае я загрузил cudnn-9.0-linux-x64-v7.tgz, совместимый с CUDA9, в папку <CUDNN>. Распаковать: tar -xzvf ....

  6. Необязательно : скомпилируйте образцы. cd <CUDASAMPLES> && make. Там есть несколько очень хороших примеров и очень хорошая отправная точка для написания CUDA-скрипты самого себя.

  7. (Если вы сделали 5.) : скопируйте необходимые файлы из <CUDNN> в <CUDA> и предоставьте пользователю разрешение на чтение (не уверен, что это необходимо):

cp -P <CUDNN>/cuda/include/cudnn.h <CUDA>/include/
cp -P <CUDNN>/cuda/lib64/libcudnn* <CUDA>/lib64
chmod a+r <CUDA>/include/cudnn.h <CUDA>/lib64/libcudnn*
  1. Добавьте библиотеку в свою среду. Обычно это делается путем добавления следующих двух строк в ваш файл ~/.bashrc (в этом примере каталог <CUDA> был ~/cuda9/:
export PATH=<CUDA>/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<CUDA>/lib64/

ДЛЯ БЫСТРОГО ТЕСТИРОВАНИЯ ИЛИ ПОЛЬЗОВАТЕЛЕЙ TENSORFLOW

Самый быстрый способ получить TensorFlow, совместимый с CUDA9 и CUDNN7 (и очень быстрый способ это проверить) - это загрузить предварительно скомпилированный файл wheel и установить его с помощью pip install <WHEEL>. Большинство необходимых вам версий можно найти в mind's repo (большое спасибо, ребята). Минимальный тест, подтверждающий, что CUDNN также работает, включает использование 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]

В моем случае для колеса, которое я установил, требовалась библиотека Intel MKL, как объяснялось здесь. Опять же, с терминала и без пользователей root, это шаги, которые я выполнил, чтобы установить библиотеку и заставить TensorFlow ее найти (ссылка):

  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 # это займет некоторое время
    1. make doc # сделайте это по желанию, если у вас есть doxygen
  6. make test # тоже требует времени
  7. make install # installs into <TARGET_DIR_IN_HOME>
  8. добавьте в свой ~/.bashrc следующее: export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<TARGET_DIR_IN_HOME>/lib

Надеюсь, это поможет!
Андрес

41
fr_andres 22 Окт 2019 в 12:56

Вы можете установить с помощью conda с помощью следующей команды.

conda install -c anaconda cudatoolkit

Но у вас должен быть предварительный доступ к устройству (GPU).

РЕДАКТИРОВАТЬ: Если вы обнаружите ошибку в репозитории anaconda, измените репозиторий на conda-forge, который часто обновляется.

conda install -c conda-forge cudatoolkit
4
Dheeraj M Pai 10 Июл 2019 в 05:50