我有一台配备 NVIDIA 卡的系统,其计算支持为 3.5+,相比之下https://developer.nvidia.com/cuda-gpus. 如何在 Ubuntu 中安装 CUDA 和 NVIDIA 驱动程序,而无需从 NVIDIA 下载 .deb 文件?
答案1
Ubuntu 18.04、CUDA 10.1、libcudnn 7.5.1 和 NVIDIA 418.67 驱动程序
笔记
2021-01-07:请使用下面的 20.04 安装继续,因为 18.04 和 20.04 的步骤相同。
2019-06-23:最近更新了 CUDA 10.0 或 10.1 版本,随其安装的 NVIDIA 418.67 驱动程序不再包含 32 位库,这将导致 Steam 和大多数游戏无法再运行。该版本
libnvidia-gl-418:i386
仅安装 418.56 版本,无法与 418.67 驱动程序配合使用。希望 NVIDIA 能尽快发布更新。我已在本答案底部添加了信息,说明.run file install
如何仅下载 CUDA 安装程序的运行文件,然后您可以使用任何您想要的驱动程序。 运行文件大小为 2.3GB,因此下载可能需要一点时间。CUDA 9.x 无法通过 NVIDIA 的 ubuntu1804 repo 获得。不过,我确实在以下网址为 CUDA 9.2 写了一篇答案:https://askubuntu.com/a/1086993/231142
通过存储库安装 CUDA(而不是安装.deb
)
您可以将以下行复制并粘贴到终端窗口。按Ctrl+ Alt+T打开终端窗口。
删除并更新
删除所有可能已安装的 CUDA PPA,并删除nvidia-cuda-toolkit
已安装的:
sudo rm /etc/apt/sources.list.d/cuda*
sudo apt remove --autoremove nvidia-cuda-toolkit
建议在安装新驱动程序之前删除所有 NVIDIA 驱动程序:
sudo apt remove --autoremove nvidia-*
然后更新系统:
sudo apt update
添加并安装
最近,我刚刚发现 CUDA 安装可以与之配合使用,graphics-drivers ppa
因此如果您尚未添加它,请立即添加:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
安装 NVIDIA 驱动程序。为此,我们将使用 440 驱动程序
sudo apt install nvidia-driver-440
现在,安装密钥:
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 驱动程序,因为这些驱动程序在 repo 中列出。请参阅: 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
Wed Jan 29 12:41:02 2020
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 440.48.02 Driver Version: 440.48.02 CUDA Version: 10.2 |
|-------------------------------+----------------------+----------------------+
| 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 Off | 00000000:02:00.0 On | N/A |
| 40% 34C P0 1W / 38W | 163MiB / 2000MiB | 1% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 1993 G /usr/lib/xorg/Xorg 158MiB |
| 0 2502 G compton 1MiB |
+-----------------------------------------------------------------------------+
.run
文件安装
安装驱动程序
通过使用,sudo add-apt-repository ppa:graphics-drivers/ppa
您可以安装430.26
最新的驱动程序或任何适合您的驱动程序。
安装 libcudnn7
添加 Repo:
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-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
更新系统:
sudo apt update
安装libcudnn7.5.1:
sudo apt install libcudnn7
下载.run
文件
现在cuda_10.1.105_418.39_linux.run
从下载https://developer.nvidia.com/cuda-10.1-download-archive-base?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1804&target_type=runfilelocal
如果您想要 CUDA 10.2,下载说明如下: https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1804&target_type=runfilelocal 然后按照下面相同的步骤进行,但确保更新到 10.2 而不是 10.1。
然后运行安装程序:
sudo sh cuda_10.1.105_418.39_linux.run
在此屏幕上输入 accept 并按 Enter 键:
┌──────────────────────────────────────────────────────────────────────────────┐
│ End User 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 │
│ │
│ │
│ Description │
│ │
│ This package contains the operating system driver and │
│──────────────────────────────────────────────────────────────────────────────│
│ Do you accept the above EULA? (accept/decline/quit): │
│ accept
取消选择驱动程序,然后使用箭头键和空格键移动并选择或取消选择来选择安装:
┌──────────────────────────────────────────────────────────────────────────────┐
│ CUDA Installer │
│ - [ ] Driver │
│ [ ] 418.39 │
│ + [X] CUDA Toolkit 10.1 │
│ [X] CUDA Samples 10.1 │
│ [X] CUDA Demo Suite 10.1 │
│ [X] CUDA Documentation 10.1 │
│ Install │
│ Options │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ Up/Down: Move | Left/Right: Expand | 'Enter': Select | 'A': Advanced options │
等待安装完成,过程中可能会出现错误,但不必担心。
调整环境并重启
将以下行添加到~/.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
重新启动系统以使更改生效。
答案2
Ubuntu 20.04 LTS、CUDA 11.5.0、NVIDIA 495 和 libcudnn 8.0.4
我不建议安装 CUDA 附带的 NVIDIA 驱动程序,因为它们不包含可延续到新内核升级的 dkms 驱动程序。
Ubuntu 存储库现在包含与graphics-drivers
PPA 相同的驱动程序。因此请随意安装495.44
驱动程序。
sudo apt install nvidia-driver-495
重新启动系统以使新的驱动程序生效。
现在,从 NVIDIA 下载 CUDA 11.5.0 .run 文件:
wget https://developer.download.nvidia.com/compute/cuda/11.5.0/local_installers/cuda_11.5.0_495.29.05_linux.run
运行.run
文件如下sudo
:
sudo sh ./cuda_11.5.0_495.29.05_linux.run
如果您得到以下信息,只需选择Continue
:
┌──────────────────────────────────────────────────────────────────────────────┐
│ Existing package manager installation of the driver found. It is strongly │
│ recommended that you remove this before continuing. │
│ Abort │
│ Continue │
│
接受 EULA:
┌──────────────────────────────────────────────────────────────────────────────┐
│ End User License Agreement │
│ -------------------------- │
│ │
│ NVIDIA Software License Agreement and CUDA Supplement to │
│ Software License Agreement. Last updated: October 8, 2021 │
│ │
│ The CUDA Toolkit End User License Agreement applies to the │
│ NVIDIA CUDA Toolkit, the NVIDIA CUDA Samples, the NVIDIA │
│ Display Driver, NVIDIA Nsight tools (Visual Studio Edition), │
│ and the associated documentation on CUDA APIs, programming │
│ model and development tools. If you do not agree with the │
│ terms and conditions of the license agreement, then do not │
│ download or use the software. │
│ │
│ Last updated: October 8, 2021. │
│ │
│ │
│ Preface │
│ ------- │
│ │
│──────────────────────────────────────────────────────────────────────────────│
│ Do you accept the above EULA? (accept/decline/quit): │
│ accept
[X] Driver
在突出显示时按空格键取消选择视频驱动程序:
┌──────────────────────────────────────────────────────────────────────────────┐
│ CUDA Installer │
│ - [ ] Driver │
│ [ ] 495.29.05 │
│ + [X] CUDA Toolkit 11.5 │
│ [X] CUDA Samples 11.5 │
│ [X] CUDA Demo Suite 11.5 │
│ [X] CUDA Documentation 11.5 │
│ 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.5 installation
if [ -d "/usr/local/cuda-11.5/bin/" ]; then
export PATH=/usr/local/cuda-11.5/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.5/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
fi
安装 libcudnn8
添加 Repo:
笔记:NVIDIA 的 20.04 repo 不提供 libcudnn,但 18.04 repo 提供并可以完美安装到 20.04 中。
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
Thu Nov 18 07:31:31 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 495.44 Driver Version: 495.44 CUDA Version: 11.5 |
|-------------------------------+----------------------+----------------------+
| 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 NVIDIA GeForce ... Off | 00000000:01:00.0 On | N/A |
| 40% 38C P8 1W / 38W | 310MiB / 2000MiB | 4% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 2091 G /usr/lib/xorg/Xorg 46MiB |
| 0 N/A N/A 2680 G /usr/lib/xorg/Xorg 163MiB |
| 0 N/A N/A 2906 G compton 1MiB |
| 0 N/A N/A 3262 G /opt/waterfox/waterfox 85MiB |
+-----------------------------------------------------------------------------+
并检查 CUDA 安装:
~$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Mon_Sep_13_19:13:29_PDT_2021
Cuda compilation tools, release 11.5, V11.5.50
Build cuda_11.5.r11.5/compiler.30411180_0
并检查 libcudnn 安装:
~$ /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
答案3
对我有用的 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-smi
和nvidia-settings
。如果我安装nvidia-cuda-toolkit
,它会卸载我选择的实用程序和驱动程序并禁用nvidia-smi
。
答案4
对于使用 AWS 深度学习基础 AMI 的任何人:
该映像内置了多个 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