CUDA 和 CuDNN 版本与 Tensorflow2.4.1 冲突
CUDA and CuDNN version conflict against Tensorflow2.4.1
我希望有人给你的TF2.4.1环境配RTX 30X0。
更具体地说,我想知道 nvidia 驱动程序、CUDA 和 CuDNN 版本。毕竟还有TF2.4.1的安装方式。
我正在努力将 tensorflow2.4.1 安装到我的 PC 中,如下所示。
OS : Ubuntu 20.04(版本无所谓)
CPU:锐龙 5600X
显卡:RTX 3070
根据以下站点,我知道 TF2.4.1 的要求是 CUDA11.0 w/ CuDNN8.0.4。
https://www.tensorflow.org/install/gpu
但是,NVIDIA 驱动程序版本 457 是 RTX 3070 的第一个版本,当前最新版本是 Ver.460。因此,我在终端上安装了版本 460 和 'nvidia-smi' returns。 (如您所知,CUDA 11.2 版未随此驱动程序一起安装。)
| NVIDIA-SMI 460.73.01 驱动程序版本:460.73.01 CUDA 版本:11.2 |
下面来自 NVIDIA 站点的支持矩阵表明 CUDA 11.0 适用于驱动程序版本 450。这意味着它不能是 RTX 3070 的那个。对于 RTX 3070,我认为 CUDA 11.2 或更高版本是那个,因为它支持 Ver.460。
https://docs.nvidia.com/deeplearning/cudnn/support-matrix/index.html
安装CUDA11.2 w/ CuDNN8.1.0后,我通过pip将tensorflow安装到pyenv。但是,TF 在 CPU 上运行。我通过返回“[]”的“tf.config.list_physical_devices('GPU')”确认
如我所料。
只要TF2.4.1对NVIDIA环境的限制有效,你说我这台PC上是不是不能制作TF环境?
我在 Ubuntu 的全新安装中尝试了很多模式。有一次安装ver.450失败,出现DPKG错误,不过我会再试一次。
我和你一样 ubuntu 20.4。但是为了让 tensorflow 能够很好地看到 GPU,最终对我有用的是:
张量流-GPU 2.2.0
库达10.1
cudnn 7.6
并且都带有版本为 460.73.01
的 NVIDIA 驱动器
谢谢大家。我发现我的问题已解决,如下所示。
安装Ubuntu20.04后,安装最新的NVIDIA驱动。
(也许不需要,因为它会随 CUDA 安装自动安装。)
sudo ubuntu-drivers devices
sudo apt-get install --no-install-recommends nvidia-driver-460
nvidia-smi
sudo reboot
安装TF2.4.1需要的CUDA11.0。
这次我引用了 runfile[local] 而不是之前失败的 deb[local] 。
https://developer.nvidia.com/cuda-11.0-update1-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=2004&target_type=runfilelocal
sudo apt update
wget https://developer.download.nvidia.com/compute/cuda/11.0.3/local_installers/cuda_11.0.3_450.51.06_linux.run
sudo sh cuda_11.0.3_450.51.06_linux.run
*WARNING ‘找到驱动程序的现有包管理器安装。’ 出现在上面一行,我中止了它。改为在下面完成。
sudo sh ./cuda_11.0.3_450.51.06_linux.run --toolkit --silent –-override
确认usr/local/cuda-11.0/bin是否存在并编辑bashrc.
sudo vim ~/.bashrc
将以下两行添加到 bashrc。
export PATH=/usr/local/cuda-11.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
重新加载 bashrc
source ~/.bashrc
安装 CuDNN。提前下载皮重库。
https://developer.nvidia.com/rdp/cudnn-archive
cd Downloads
tar -xzvf cudnn-11.0-linux-x64-v8.0.4.30.tgz
sudo cp cuda/include/cudnn*.h /usr/local/cuda/include
sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
sudo apt update
按照 https://www.tensorflow.org/install/pip?hl=ja 的指示安装 TF2.4.1。
sudo apt install python3-dev python3-pip python3-venv
cd Documents/ML/tf-test1
python3 -m venv test1
source test1/bin/activate
pip install --upgrade pip
pip list
pip install --upgrade tensorflow
检查TF是否安装正确
import tensorflow as tf
print(tf.__version__)
print(tf.config.list_physical_devices('GPU'))
print(tf.test.gpu_device_name())
当我执行我的 CNN 模型时,‘无法获得卷积算法。这可能是因为 cuDNN 未能初始化’发生为 fit()。然后我像往常一样在下面做了。
export TF_FORCE_GPU_ALLOW_GROWTH=true
然后整理出来。
我希望有人给你的TF2.4.1环境配RTX 30X0。 更具体地说,我想知道 nvidia 驱动程序、CUDA 和 CuDNN 版本。毕竟还有TF2.4.1的安装方式。
我正在努力将 tensorflow2.4.1 安装到我的 PC 中,如下所示。 OS : Ubuntu 20.04(版本无所谓) CPU:锐龙 5600X 显卡:RTX 3070
根据以下站点,我知道 TF2.4.1 的要求是 CUDA11.0 w/ CuDNN8.0.4。
https://www.tensorflow.org/install/gpu
但是,NVIDIA 驱动程序版本 457 是 RTX 3070 的第一个版本,当前最新版本是 Ver.460。因此,我在终端上安装了版本 460 和 'nvidia-smi' returns。 (如您所知,CUDA 11.2 版未随此驱动程序一起安装。)
| NVIDIA-SMI 460.73.01 驱动程序版本:460.73.01 CUDA 版本:11.2 |
下面来自 NVIDIA 站点的支持矩阵表明 CUDA 11.0 适用于驱动程序版本 450。这意味着它不能是 RTX 3070 的那个。对于 RTX 3070,我认为 CUDA 11.2 或更高版本是那个,因为它支持 Ver.460。
https://docs.nvidia.com/deeplearning/cudnn/support-matrix/index.html
安装CUDA11.2 w/ CuDNN8.1.0后,我通过pip将tensorflow安装到pyenv。但是,TF 在 CPU 上运行。我通过返回“[]”的“tf.config.list_physical_devices('GPU')”确认 如我所料。 只要TF2.4.1对NVIDIA环境的限制有效,你说我这台PC上是不是不能制作TF环境?
我在 Ubuntu 的全新安装中尝试了很多模式。有一次安装ver.450失败,出现DPKG错误,不过我会再试一次。
我和你一样 ubuntu 20.4。但是为了让 tensorflow 能够很好地看到 GPU,最终对我有用的是: 张量流-GPU 2.2.0 库达10.1 cudnn 7.6 并且都带有版本为 460.73.01
的 NVIDIA 驱动器谢谢大家。我发现我的问题已解决,如下所示。
安装Ubuntu20.04后,安装最新的NVIDIA驱动。 (也许不需要,因为它会随 CUDA 安装自动安装。)
sudo ubuntu-drivers devices
sudo apt-get install --no-install-recommends nvidia-driver-460
nvidia-smi
sudo reboot
安装TF2.4.1需要的CUDA11.0。 这次我引用了 runfile[local] 而不是之前失败的 deb[local] 。 https://developer.nvidia.com/cuda-11.0-update1-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=2004&target_type=runfilelocal
sudo apt update
wget https://developer.download.nvidia.com/compute/cuda/11.0.3/local_installers/cuda_11.0.3_450.51.06_linux.run
sudo sh cuda_11.0.3_450.51.06_linux.run
*WARNING ‘找到驱动程序的现有包管理器安装。’ 出现在上面一行,我中止了它。改为在下面完成。
sudo sh ./cuda_11.0.3_450.51.06_linux.run --toolkit --silent –-override
确认usr/local/cuda-11.0/bin是否存在并编辑bashrc.
sudo vim ~/.bashrc
将以下两行添加到 bashrc。
export PATH=/usr/local/cuda-11.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
重新加载 bashrc
source ~/.bashrc
安装 CuDNN。提前下载皮重库。 https://developer.nvidia.com/rdp/cudnn-archive
cd Downloads
tar -xzvf cudnn-11.0-linux-x64-v8.0.4.30.tgz
sudo cp cuda/include/cudnn*.h /usr/local/cuda/include
sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
sudo apt update
按照 https://www.tensorflow.org/install/pip?hl=ja 的指示安装 TF2.4.1。
sudo apt install python3-dev python3-pip python3-venv
cd Documents/ML/tf-test1
python3 -m venv test1
source test1/bin/activate
pip install --upgrade pip
pip list
pip install --upgrade tensorflow
检查TF是否安装正确
import tensorflow as tf
print(tf.__version__)
print(tf.config.list_physical_devices('GPU'))
print(tf.test.gpu_device_name())
当我执行我的 CNN 模型时,‘无法获得卷积算法。这可能是因为 cuDNN 未能初始化’发生为 fit()。然后我像往常一样在下面做了。
export TF_FORCE_GPU_ALLOW_GROWTH=true
然后整理出来。