Как установить драйверы NVIDIA и CUDA в Ubuntu?

У меня есть система с картой NVIDIA, которая имеет вычислительную поддержку 3,5+ по сравнению с https://developer.nvidia.com/cuda-gpus. Как установить драйверы CUDA и NVIDIA в Ubuntu, не загружая файлы.deb из NVIDIA?

9 ответов

Решение

Драйверы Ubuntu 18.04, CUDA 10.1, libcudnn 7.5.1 и NVIDIA 418.67:

ПРИМЕЧАНИЕ: CUDA 9.x не доступен через репозиторий ubuntu1804 от NVIDIA. Однако я написал ответ для CUDA 9.2 по адресу /questions/555973/problemyi-cuda-s-versiej-drajvera-nvidia/555982#555982

Эти инструкции предназначены для установки CUDA через репозиторий вместо .deb монтаж.

Следующие строки вы можете скопировать и вставить в окно терминала. Нажмите Ctrl + Alt + T, чтобы открыть окно терминала.

Удалите все CUDA PPA, которые могут быть настроены, а также удалите nvidia-cuda-toolkit если установлено:

sudo rm /etc/apt/sources.list.d/cuda*
sudo apt remove nvidia-cuda-toolkit

Рекомендуется также удалить все драйверы NVIDIA перед установкой новых драйверов:

sudo apt remove nvidia-*

Затем обновите систему:

sudo apt update

Недавно я только что узнал, что установка CUDA работает с graphics-drivers ppa так что, если вы не добавили его, добавьте его сейчас:

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

Установите ключ:

sudo apt-key adv --fetch-keys  http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub

Добавьте репо:

sudo bash -c 'echo "deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/cuda.list'

sudo bash -c 'echo "deb http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/cuda_learn.list'

Обновите систему еще раз:

sudo apt update

Установите CUDA 10.1:

sudo apt install cuda-10-1

Следует установить с ним драйверы NVIDIA 418.40, так как они перечислены в репозитории. Смотрите: http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/

Установите libcudnn7 7.5.1:

sudo apt install libcudnn7

Добавьте следующие строки в ваш ~/.profile файл для CUDA 10.1

# set PATH for cuda 10.1 installation
if [ -d "/usr/local/cuda-10.1/bin/" ]; then
    export PATH=/usr/local/cuda-10.1/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
fi

Перезагрузите компьютер и проверьте настройки после завершения перезагрузки:

Проверьте компилятор NVIDIA Cuda с nvcc --version:

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Wed_Apr_24_19:10:27_PDT_2019
Cuda compilation tools, release 10.1, V10.1.168

Проверьте версию libcudnn /sbin/ldconfig -N -v $(sed 's/:/ /' <<< $LD_LIBRARY_PATH) 2>/dev/null | grep libcudnn:

terrance@terrance-ubuntu:~$ /sbin/ldconfig -N -v $(sed 's/:/ /' <<< $LD_LIBRARY_PATH) 2>/dev/null | grep libcudnn
    libcudnn.so.7 -> libcudnn.so.7.5.1

Проверьте драйвер NVIDIA с nvidia-smi:

terrance@terrance-ubuntu:~$ nvidia-smi 
Sat Jun  1 09:38:07 2019       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 418.67       Driver Version: 418.67       CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 750 Ti  On   | 00000000:02:00.0  On |                  N/A |
| 40%   38C    P0     2W /  38W |    116MiB /  2000MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0      2216      G   /usr/lib/xorg/Xorg                           110MiB |
|    0      2542      G   compton                                        1MiB |
+-----------------------------------------------------------------------------+

Ubuntu 20.04 LTS, CUDA 11.1.1, NVIDIA 450 и libcudnn 8.0.4


Примечание. Драйвер NVIDIA, который поставляется с CUDA 11.1.1, представляет собой драйвер 455, который не поставляется с 32-битными драйверами, которые могут приводить к сбою таких приложений, как Steam, из-за отсутствия 32-битных библиотек. Эта установка обходит установку драйверов 455.

Если у вас нет graphics-drivers PPA уже настроен, добавьте его в свою систему и удалите все предыдущие драйверы NVIDIA.

sudo apt-add-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt install nvidia-driver-450

Теперь загрузите файл.run CUDA 11.1.1 с NVIDIA:

wget https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux.run

Мне нравится делать его исполняемым:

chmod +x cuda_11.1.1_455.32.00_linux.run

Теперь установите CUDA:

sudo ./cuda_11.1.1_455.32.00_linux.run 

Примите лицензионное соглашение:

┌──────────────────────────────────────────────────────────────────────────────┐
│  End User License Agreement                                                  │
│  --------------------------                                                  │
│                                                                              │
│  NVIDIA Software License Agreement and CUDA Supplement to                    │
│  Software License Agreement.                                                 │
│                                                                              │
│                                                                              │
│  Preface                                                                     │
│  -------                                                                     │
│                                                                              │
│  The Software License Agreement in Chapter 1 and the Supplement              │
│  in Chapter 2 contain license terms and conditions that govern               │
│  the use of NVIDIA software. By accepting this agreement, you                │
│  agree to comply with all the terms and conditions applicable                │
│  to the product(s) included herein.                                          │
│                                                                              │
│                                                                              │
│  NVIDIA Driver                                                               │
│                                                                              │
│                                                                              │
│──────────────────────────────────────────────────────────────────────────────│
│ Do you accept the above EULA? (accept/decline/quit):                         │
│ accept                                                                            

Отмените выбор драйвера, нажав пробел, пока [X] Driver выделено:

┌──────────────────────────────────────────────────────────────────────────────┐
│ CUDA Installer                                                               │
│ - [ ] Driver                                                                 │
│      [ ] 455.32.00                                                           │
│ + [X] CUDA Toolkit 11.1                                                      │
│   [X] CUDA Samples 11.1                                                      │
│   [X] CUDA Demo Suite 11.1                                                   │
│   [X] CUDA Documentation 11.1                                                │
│   Options                                                                    │
│   Install                                                                    │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│                                                                              │
│ Up/Down: Move | Left/Right: Expand | 'Enter': Select | 'A': Advanced options │

Затем нажмите стрелку вниз, чтобы Install. Нажмите и Enter дождитесь завершения установки.

После завершения установки добавьте следующее в нижнюю часть вашего ~/.profile или добавьте его в /etc/profile.d/cuda.sh файл, который вам, возможно, придется создать для всех пользователей (глобальный):

# set PATH for cuda 11.1 installation
if [ -d "/usr/local/cuda-11.1/bin/" ]; then
    export PATH=/usr/local/cuda-11.1/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-11.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
fi

Установите libcudnn8

Добавьте репо:

echo "deb http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64 /" | sudo tee /etc/apt/sources.list.d/cuda_learn.list

Установите ключ:

sudo apt-key adv --fetch-keys  http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub

Обновите систему:

sudo apt update

Установите libcudnn 8.0.4:

sudo apt install libcudnn8

Я рекомендую сейчас перезагрузить систему, чтобы изменения вступили в силу.

После перезагрузки проверьте установки:

~$ nvidia-smi
Fri Oct 30 14:51:19 2020       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.80.02    Driver Version: 450.80.02    CUDA Version: 11.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  GeForce GTX 750 Ti  On   | 00000000:01:00.0  On |                  N/A |
| 40%   45C    P0     2W /  38W |    292MiB /  2000MiB |      1%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      1689      G   /usr/lib/xorg/Xorg                264MiB |
|    0   N/A  N/A      2358      G   compton                             1MiB |
|    0   N/A  N/A     35400      G   ...AAAAAAAAA= --shared-files       21MiB |
+-----------------------------------------------------------------------------+



~$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2020 NVIDIA Corporation
Built on Mon_Oct_12_20:09:46_PDT_2020
Cuda compilation tools, release 11.1, V11.1.105
Build cuda_11.1.TC455_06.29190527_0


~$ /sbin/ldconfig -N -v $(sed 's/:/ /' <<< $LD_LIBRARY_PATH) 2>/dev/null | grep libcudnn
    libcudnn_cnn_infer.so.8 -> libcudnn_cnn_infer.so.8.0.4
    libcudnn.so.8 -> libcudnn.so.8.0.4
    libcudnn_adv_train.so.8 -> libcudnn_adv_train.so.8.0.4
    libcudnn_ops_infer.so.8 -> libcudnn_ops_infer.so.8.0.4
    libcudnn_cnn_train.so.8 -> libcudnn_cnn_train.so.8.0.4
    libcudnn_adv_infer.so.8 -> libcudnn_adv_infer.so.8.0.4
    libcudnn_ops_train.so.8 -> libcudnn_ops_train.so.8.0.4

Драйверы Ubuntu 16.04, CUDA 9.2 и NVIDIA 396:

ПРИМЕЧАНИЕ: репо NVIDIA здесь решило подтолкнуть драйверы 410. Я проведу некоторое тестирование, чтобы увидеть, смогу ли я установить его для драйвера, который вы хотите установить.

Эти инструкции предназначены для установки CUDA через репозиторий вместо .deb монтаж.

Следующие строки вы можете скопировать и вставить в окно терминала. Нажмите Ctrl + Alt + T, чтобы открыть окно терминала.

Удалите все CUDA PPA, которые могут быть настроены, а также удалите nvidia-cuda-toolkit если установлено:

sudo rm /etc/apt/sources.list.d/cuda*
sudo apt remove nvidia-cuda-toolkit

Рекомендуется также удалить все драйверы NVIDIA перед установкой новых драйверов:

sudo apt remove nvidia-*

Затем обновите систему:

sudo apt update

Установите ключ:

sudo apt-key adv --fetch-keys  http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub

Добавьте репо:

sudo bash -c 'echo "deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64 /" > /etc/apt/sources.list.d/cuda.list'

Обновление для нового добавляемого репо:

sudo apt update

Установите CUDA 9.2:

sudo apt install cuda-9-2

Следует установить драйверы nvidia-396 вместе с ним, так как они перечислены в репозитории. Смотрите: http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/

Убедитесь, что CUDA 9.2 была установлена:

~$ ls /usr/local/cuda-9.2/
bin     include    libnvvp           nvml    samples  targets
doc     lib64      LICENSE           nvvm    share    tools
extras  libnsight  nsightee_plugins  README  src      version.txt

Теперь добавьте следующее к вашему ~/.profile для PATH а также LD_LIBRARY, Вы можете использовать команду gedit ~/.profile для редактирования:

# set PATH for cuda 9.2 installation
if [ -d "/usr/local/cuda-9.2/bin/" ]; then
    export PATH=/usr/local/cuda-9.2/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-9.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
fi

Перезагрузите вашу систему.

sudo reboot

После запуска системы вы можете проверить установку, введя следующее:

nvcc -V

Вы должны увидеть нечто похожее следующее:

~$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Nov__3_21:07:56_CDT_2017
Cuda compilation tools, release 9.1, V9.1.85

И вы должны увидеть 396.xx драйверы установлены:

~$ nvidia-smi
Thu May 17 07:38:54 2018        
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 396.44                 Driver Version: 396.44                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 760     Off  | 00000000:02:00.0 N/A |                  N/A |
| 49%   53C    P0    N/A /  N/A |    187MiB /  1999MiB |     N/A      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0                    Not Supported                                       |
+-----------------------------------------------------------------------------+

22.04 Инструкции LTS, которые у меня сработали:

Установите драйвер NVIDIA:

      sudo apt install nvidia-utils-525  # change version number to the new one...
sudo apt install nvidia-driver-525
sudo shutdown -r now # restart 
sudo apt autoremove # just for good measure, clean up
nvidia-smi # check that the system can find the driver and list the gpus
nvidia-settings  # to check current usage, etc.

Установите Cuda, не удаляя только что выбранный вами драйвер nvidia:

Найдите нужную вам версию cuda: Developer.nvidia.com/cuda-downloads .

      wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda

Для меня это был единственный способ получить и тот драйвер nvidia, который я хотел, и ту версию cuda, которую я хотел, сохраняя при этом возможность использовать иnvidia-settings. Если бы я установилnvidia-cuda-toolkitвместо этого он удалит выбранные мной утилиты и драйвер и отключитnvidia-smi.

Драйверы Ubuntu 14.04, CUDA 10.0 и NVIDIA 410:

Обратите внимание, что у меня не установлена ​​Ubuntu 14.04, поэтому я не могу проверить, работают ли эти шаги или нет. Но, согласно http://developer.download.nvidia.com/compute/cuda/repos/ от NVIDIA, это должны быть те же шаги, которые я перечислил в двух других ответах.

Эти инструкции предназначены для установки CUDA через репозиторий вместо .deb монтаж.

Следующие строки вы можете скопировать и вставить в окно терминала. Нажмите Ctrl + Alt + T, чтобы открыть окно терминала.

Удалите все CUDA PPA, которые могут быть настроены, а также удалите nvidia-cuda-toolkit если установлено:

sudo rm /etc/apt/sources.list.d/cuda*
sudo apt remove nvidia-cuda-toolkit

Рекомендуется также удалить все драйверы NVIDIA перед установкой новых драйверов:

sudo apt remove nvidia-*

Затем обновите систему:

sudo apt update

Установите ключ:

sudo apt-key adv --fetch-keys  http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub

Добавьте репо:

sudo bash -c 'echo "deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64 /" > /etc/apt/sources.list.d/cuda.list'

Обновите систему еще раз:

sudo apt update

Установите CUDA 10.0.

sudo apt install cuda-10-0

Следует установить с ним драйверы nvidia-410, так как они перечислены в репозитории. Смотрите: http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/

Добавьте следующие строки в ваш ~/.profile файл для CUDA 10.0

# set PATH for cuda 10.0 installation
if [ -d "/usr/local/cuda-10.0/bin/" ]; then
    export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
fi

Перезагрузите компьютер и проверьте настройки после завершения перезагрузки:

Проверьте компилятор NVIDIA Cuda с nvcc --version:

Проверьте драйвер NVIDIA с помощью nvidia-smi:

Я просто хочу добавить альтернативное решение, которое в конечном итоге будет намного проще и модульнее, ИМХО: используйте образы докеров Nvidia CUDA!

Для этого требуется работающий (проприетарный) драйвер на хост-компьютере, который можно установить из репозиториев Ubuntu ( nvidia-driver-470является последней поддерживаемой версией драйвера для вычислений CUDA 3.5).

  1. sudo apt install nvidia-driver-470
  2. Установите Докер и nvidia-docker2. См. это руководство от Nvidia; если вы используете Ubuntu 21+, вы захотите заменить $distributionс ubuntu2004на этом шаге .
  3. Найдите нужный образ докера CUDA на странице Nvidia DockerHub ; например, если вы хотите CUDA 11.4.2 и cuDNN 8, вы можете запустить
            $ docker pull nvidia/cuda:11.4.2-cudnn8-devel-ubuntu20.04
    
  4. Теперь запустите контейнер из этого образа, подключив свои графические процессоры:
            $ docker run -it --rm --gpus all nvidia/cuda:11.4.2-cudnn8-devel-ubuntu20.04
    
    Вы должны убедиться, что контейнер может видеть ваш графический процессор, запустив , который покажет тот же результат, что и при запуске. nvidia-smiНЕ внутри Докера.

Для всех, кто работает с AMI базы глубокого обучения AWS:
образ поставляется с несколькими встроенными средами NVIDIA CUDA и по умолчанию работает с одной из них (в моем случае 10), но вы можете переключиться на любую другую, просто изменив символическую ссылку:

$ sudo rm /usr/local/cuda
$ sudo ln -s /usr/local/cuda-10.2 /usr/local/cuda

Подробнее:
https://docs.aws.amazon.com/dlami/latest/devguide/tutorial-base.html

Не ошибись скачайте файл.deb раз и навсегда. Я скачал файл.run и установил его. но, как только я попытался установить тензор, оказалось, что его можно установить, только если ваша система использует установку файлов.deb драйверов nvidia.

Рассмотрите возможность использования образа докера с глубоким обучением, доступного по адресу

https://github.com/matifali/dockerdl

Другие вопросы по тегам