Як можна встановити CUDA 9 на Ubuntu 17.10


41

Ubuntu 17.10 оснащений CUDA 8, який спирається на кланг 3.8 (наприклад, дивіться цей поштовий пост ).

Однак я хотів би встановити CUDA 9 і по можливості покладатися на GCC. Як я можу це зробити?

Відповіді:


57

Встановлення драйвера NVIDIA 384

Спочатку ми встановлюємо свіжий Ubuntu 17.10 на комп’ютер з графічним процесором NVIDIA і під час процесу вибираємо "Встановити сторонне програмне забезпечення". Крім того, ми можемо додати сховище графічних драйверів вручну:

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

Тоді ми встановлюємо останній драйвер NVIDIA за допомогою apt:

sudo apt install nvidia-384 nvidia-384-dev

Ми перевіряємо встановлення, запустивши:

nvidia-smi

Ми повинні побачити вихід, який містить список драйверів NVIDIA 384 та наш дискретний NVIDIA GPU - аналогічно зведеній таблиці нижче:

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 384.90                 Driver Version: 384.90                    |
|                                                                             |
|-------------------------------+----------------------+----------------------+
|   0  Quadro M500M        Off  | 00000000:06:00.0 Off |                  N/A |
| N/A   48C    P0    N/A /  N/A |    943MiB /  2002MiB |     26%      Default |
+-------------------------------+----------------------+----------------------+

Підготовка до встановлення CUDA 9 + SDK

Ми встановлюємо декілька пакунків build / dev, які нам потрібні пізніше:

sudo apt-get install g++ freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev

Ми помічаємо, що за замовчуванням gcc / g ++ версія 17.10 7.2.0 (Ubuntu 7.2.0-8ubuntu3) :

gcc -v

CUDA 9 вимагає gcc 6. Отже, ми встановлюємо його:

sudo apt install gcc-6
sudo apt install g++-6

Зауважте, що версія gcc за замовчуванням все ще є 7.2; можна перевірити, запустивши gcc -vзнову.

Встановлення CUDA 9 + SDK

У архіві інструментарію CUDA виберіть один із інсталяційних пакетів "runfile (local)", щоб завантажити версію CUDA 9, наприклад

wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run

Зробіть завантажений файл виконуваним і запустіть його за допомогою sudo:

chmod +x cuda_9.0.176_384.81_linux-run 
sudo ./cuda_9.0.176_384.81_linux-run --override

Ми встановлюємо CUDA з такими конфігураціями:

You are attempting to install on an unsupported configuration. Do you wish to continue?
y
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.81?
n
Install the CUDA 9.0 Toolkit?
y
Enter Toolkit Location
[default location]
Do you want to install a symbolic link at /usr/local/cuda?
y
Install the CUDA 9.0 Samples?
y
Enter CUDA Samples Location
[default location]

Налаштування символьних посилань для gcc / g ++:

sudo ln -s /usr/bin/gcc-6 /usr/local/cuda/bin/gcc
sudo ln -s /usr/bin/g++-6 /usr/local/cuda/bin/g++

Випробуйте установку CUDA 9 за допомогою SDK

Створіть улюблений зразок CUDA та запустіть його:

cd ~/NVIDIA_CUDA-9.0_Samples/5_Simulations/smokeParticles
make
../../bin/x86_64/linux/release/smokeParticles 

Можливо, ви хочете встановити gcc / g ++ посилання після встановлення cuda.


1
Трохи затримались у цьому питанні. Запуск 17.10, спроба встановити CUDA 9. У мене виникає проблема на кроці 2: nvidia-smi NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Ran lspci | grep -i nvidiaкаже, що у мене GeForce GTX 760. mokutil --sb-stateпоказано, що SecureBoot вимкнено. Ран sudo apt-get purge nvidia*, запустив команду встановлення на 384 і запустив dpkg -S nvidia-sminvidia-384: / usr / lib / nvidia-384 / bin / nvidia-smi. Будь-які пропозиції?
Кларк Кент

4
Я повинен був зробити або, sudo ln -s /usr/bin/gcc-6 /usr/local/cuda-9.0/bin/gcc sudo ln -s /usr/bin/g++-6 /usr/local/cuda-9.0/bin/g++або sudo ./cuda_9.0.176_384.81_linux-run --overrideавтор нижче рекомендує встановити успішно без конфлікту компілятора
y.selivonchyk

11
дві команди для додавання символічних посилань для компіляторів gcc 6 повинні бути виконані після встановлення cuda, оскільки / usr / local / cuda не існує перед встановленням
Луїс Лобо Боробія

1
Допомагайте багато! Єдине, що я зробив іншим способом - створив посилання після установки cuda в самому кінці.
QtRoS

1
Перед запуском cuda_9.0.176_384.81_linux.run, як ви створили м'які посилання ( ln -s)? Ви створили папку cuda вручну?
махмуд

5

Встановлення цього обладнання зайняло більше часу, ніж я хотів би визнати, і хоча відповідь вище є гарним шаблоном, у мене були додаткові кроки, необхідні для моєї нової установки Ubuntu 17.10:

чорний список нуво

sudo vim /etc/modprobe.d/blacklist.conf

Додайте наступне:

# this one might not be required for x86 32 bit users.
blacklist amd76x_edac 

blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv

Оновіть диск initramfs

sudo update-initramfs -u

Зупинити gdm3

sudo /etc/init.d/gdm3 stop

sudo init 3

Отримайте контент

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt install nvidia-384 nvidia-384-dev
sudo apt-get install g++ freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev

nvidia-smi

Отримайте пакет

wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run

Запустіть з --override, щоб змінити вибір компілятора

chmod +x cuda_9.0.176_384.81_linux-run 
sudo ./cuda_9.0.176_384.81_linux-run --override

Після установки пакета я отримав би помилки з nvidia-smi, тому пропоную запустити команду ще раз, щоб перевірити, чи працює вона. Коли у мене виникли проблеми, я б очистив nvidia * і знову отримав його.

nvidia-smi

Деяким людям, можливо, доведеться зупинитися lightdmзамість gdm3, дивіться askubuntu.com/a/65867/422690
crypdick

1

Я дотримувався прийнятої відповіді (@ubashu) і все пішло добре (якщо не зовсім те саме, інструкція призведе до правильного шляху). Я мав би лише експорт на Path (як зазначено також на https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#post-installation-action )

export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}} 
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64\ ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

Після цього ви можете використовувати nvcc -V, щоб перевірити, чи справді встановлення пройшло добре.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.