📜  tensorflow 看不到 gpu (1)

📅  最后修改于: 2023-12-03 15:20:34.060000             🧑  作者: Mango

TensorFlow 看不到 GPU

TensorFlow是目前深度学习领域最流行的框架之一,其支持GPU加速,但是有时候我们会遇到在代码中看不到GPU的情况。

常见原因
  1. 没有安装CUDA或者CUDNN,或者安装的版本不对应
  2. TensorFlow版本不支持GPU
  3. 没有正确设置环境变量
解决方案
确认CUDA和tf的版本是否匹配

首先,我们需要确保CUDA和TensorFlow版本之间的匹配。TensorFlow支持不同版本的CUDA和CUDNN,但是需要确保安装的版本是兼容的。

在macOS或Linux系统上,可以使用以下命令获得CUDA版本:

nvcc --version

在Windows操作系统中,请在命令提示符(cmd)或PowerShell中使用以下命令获取CUDA版本:

"C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe"

确保安装的CUDA版本与TensorFlow支持的版本匹配。

安装CUDA和CUDNN

如果CUDA和CUDNN未安装,则需要下载并安装它们。

我们可以在官网页面上下载需要的CUDA安装程序。下载后,按照提示安装CUDA。

然后,我们需要下载和安装CUDNN。您需要先创建NVIDA开发者账户,然后在官方网站上下载CUDNN。将其解压到CUDA安装目录下的文件夹中。在Windows系统上,这可能是:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1
环境变量设置

我们还需要设置环境变量,以便TensorFlow可以找到CUDA和CUDNN库。

在Linux/MacOS系统中,我们可以在~/.bashrc~/.zshrc中添加以下内容:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64
export CUDA_HOME=/usr/local/cuda

在Windows系统中,需要将CUDA库路径添加到系统环境变量中。您可以遵循以下步骤:

  1. 选择“控制面板” -> “系统和安全” -> “系统” -> “高级系统设置”,然后单击“高级”选项卡。
  2. 点击“环境变量”按钮。
  3. 在“系统变量”下,单击“新建(N)”按钮。
  4. 添加CUDA_HOMELD_LIBRARY_PATH,根据你的CUDA的安装路径。
测试

在成功安装和设置之后,您应该能够使用TensorFlow看到GPU。

通过以下命令,可以检查TensorFlow是否能够发现GPU:

import tensorflow as tf
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))

如果一切正常,您将看到类似以下内容的输出:

Num GPUs Available:  1

否则,可能需要再次检查环境设置,或View日志以获取进一步的错误信息。

结论

在前往使用TensorFlow GPU之前,您需要确保正确安装了CUDA和CUDNN,并正确设置环境变量。在成功完成安装和设置之后,您可以使用TensorFlow利用GPU进行加速,并提高深度学习任务的性能。