CUDA什么时候会发布适用于Ubuntu 20.04的版本?

20.04两天前发布了,但是CUDA for 20.04什么时候会发布呢?Nvidia通常会迅速跟进吗?

118.04 CUDA版本在20.04上运行良好。唯一的诀窍是确保您不要用标准软件源中的某个古老版本替换当前的Nvidia驱动程序,因为所有cuda软件包都依赖于它。本地提取cuda文件可以正常工作。 - ubfan1
7个回答

只针对Cuda,您可以参考@meetnick答案

截至2020年6月16日,我成功在Ubuntu 20.04上安装了CUDA 10.1和cuDNN 7.6.5,并且它们与Tensorflow 2.2.0完美兼容。
以下是我遵循的步骤:

1- 安装CUDA(10.1):

目前针对Ubuntu 20.04没有deb文件或运行文件,所以唯一的解决方案是执行以下命令:

sudo apt install nvidia-cuda-toolkit

安装需要一些时间。
之后为了确保CUDA已经安装成功,请运行以下命令:

nvcc -V  

你会得到类似以下的输出:
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Sun_Jul_28_19:07:16_PDT_2019
Cuda compilation tools, release 10.1, V10.1.243  

这意味着CUDA已成功安装在您的Ubuntu 20.04上。 稍有不同的是,cuda未安装在通常的路径(/usr/local/cuda,/usr/local/cuda-10.1)。而是安装在/usr/lib/(/usr/lib/cuda/)。 您可以通过运行以下命令来查看CUDA的安装位置:
whereis cuda 

2- 安装 cuDNN (7.6.5):

首先访问此 链接,然后选择 下载 cuDNN。您将被要求登录/创建一个帐户。登录后,您将被要求接受 cuDNN 软件许可协议的条款
将显示可下载的 cuDNN 列表,请点击 下载 cuDNN v7.6.5 (2019年11月5日),适用于 CUDA 10.1,然后选择 Linux 平台的 cuDNN 库
下载完成后,解压文件,然后打开终端并运行:

cd cudnn-10.1-linux-x64-v7.6.5.32 # or whatever folder you got after extracting the file

然后:

sudo cp cuda/include/cudnn.h /usr/lib/cuda/include/

之后:
sudo cp cuda/lib64/libcudnn* /usr/lib/cuda/lib64/

终于:
sudo chmod a+r /usr/lib/cuda/include/cudnn.h /usr/lib/cuda/lib64/libcudnn*

完成后,您需要将CUDA路径添加到您的~/.bashrc文件中。您需要运行:
echo 'export LD_LIBRARY_PATH=/usr/lib/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/lib/cuda/include:$LD_LIBRARY_PATH' >> ~/.bashrc  

然后运行:
source ~/.bashrc 

3- 可选项: 现在您可以安装Tensorflow-gpu(2.2.0)并测试是否使用了您的GPU。 pip3 install tensorflow-gpu==2.2.0 然后运行python3并输入以下代码行:
import tensorflow as tf
tf.config.list_physical_devices('GPU')

如果一切按计划进行,您将得到一个输出,告诉您Tensorflow已经可以访问您的GPU。

这个答案真的帮了我很多。我有一个问题,为什么相同的步骤在10.2上不起作用,只有在10.1上起作用? - Moustafa Mahmoud
1@MoustafaMahmoud,我没有尝试过Cuda 10.2,我只尝试过Cuda 10.1。我真的不知道。希望社区能提供帮助。 - singrium
1非常感谢你。这对我帮助很大!:) - afagarap

Ubuntu 20.04 LTS和CUDA 11.1安装设置:

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"
sudo apt update
sudo apt install -y nvidia-kernel-source-455
sudo apt install -y nvidia-dkms-455
sudo apt install -y nvidia-driver-455
sudo apt install -y cuda-drivers-455
sudo apt install -y cuda-runtime-11-1
sudo apt install -y cuda-11-1
echo 'export PATH=/usr/local/cuda-11.1/bin${PATH:+:${PATH}}' >> $HOME/.bashrc

终于发布了适用于Ubuntu 20.04的NVIDIA Cuda 11 Toolkit
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget http://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda-repo-ubuntu2004-11-0-local_11.0.2-450.51.05-1_amd64.deb
sudo apt install ./cuda-repo-ubuntu2004-11-0-local_11.0.2-450.51.05-1_amd64.deb
sudo apt-key add /var/cuda-repo-ubuntu2004-11-0-local/7fa2af80.pub
sudo apt-get update
sudo apt-get -y install cuda

在Ubuntu 20.04中已经内置了CUDA包,您可以通过输入以下命令进行安装:

sudo apt-get install nvidia-cuda-toolkit

截止到现在,它安装了CUDA 10.1。
除了@ubfan1的答案是正确的,如果你是CUDA应用程序开发者,安装18.04 CUDA可能会遇到问题,这是因为18.04仓库中的CUDA与20.04 GCC(即9.3截止到现在)不兼容。在这种情况下,我强烈建议安装内置的CUDA包。

2我正在使用在TensorFlow网站上描述的cuda_10.1_ubuntu_18.04安装(带有Cudnn和tensorRT),因为apt无法找到它们,所以我不得不手动安装cudnn和tensorRT,并且在我的20.04上运行良好。nvidia-cuda-toolkit没有起到任何帮助作用。 - paulplusx
2实际上,nvidia-cuda-toolkit 既不安装 cudnn 也不安装 TensorRT。这些库必须从 NVIDIA 下载中心强制下载。 - meetnick

你的问题是什么时候发布,那只有Nvidia自己知道,但你可以通过过去的情况来得到一个大致的想法。 Ubuntu 19.04和Ubuntu 19.10都没有发布相应的版本。 而之前的Ubuntu 18.10在2018年10月18日发布,直到2019年2月26日才发布CUDA版本。当然,在10.1版本之后,它已经达到了终止生命周期,并且不再有进一步的更新。
现在,如果你想要最新的版本(10.2),你必须使用最新的LTS版本,即Ubuntu 18.04。不确定这个软件库是否适用于Ubuntu 20.04,还没有敢去更新。但他们在评论中说它有效。 Ubuntu 18.04在2018年04月26日发布,直到2018年09月18日才发布CUDA版本。
从上面可以看出,他们花了相当长的时间来做这件事。
这让我觉得Nvidia对Linux并不关心。

2他们不关心Linux,但是他们关心深度学习,而在那里需要Linux上的CUDA... - Kai Yang

要进一步解释singrium的帖子,如果那些指示对你仍然无效,请尝试使用这个链接,我认为他们是从这里获取指示的:https://illya13.github.io/RL/tutorial/2020/04/26/installing-tensorflow-on-ubuntu-20.html 重点是,在20.04上,GPU支持目前只适用于Python 3.5-3.7和gcc 8,而Ubuntu没有预装。真是让人费解。即使在做了所有这些操作之后,我仍然遇到了一个libcudnn.so.7错误。后来我发现这是因为我在Pycharm中运行脚本。一旦我创建了自己的虚拟环境并从命令行运行,tensorflow就能够识别我的GPU,一切都正常了。我认为这可能与Pycharm无法识别LD_LIBRARY_PATH并将其传递给tf有关,但谁知道呢。希望这对某人有所帮助!

成功安装了CUDA 11.0.207和cuDNN 8.0.1,按照这些指示在20.04上进行操作这些说明
CUDA下载链接包括安装程序类型:

https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=2004

只是顺便提一下,运行这个命令可以找到适合您机器的推荐驱动程序。
ubuntu-drivers devices

并确保它与您想要安装的CUDA Toolkit版本相匹配(请参见表2 此处

使用以下命令检查您的本地驱动程序版本:

nvidia-smi

检查您本地的CUDA版本(如果有的话):
nvcc --version

或者

cat /usr/local/cuda/version.txt