【发布时间】:2021-08-01 15:15:00
【问题描述】:
我可以访问具有 Ubuntu 20.04 设置和 GPU 的虚拟机。系统管理员已经安装了最新的 Cuda 驱动程序,但不幸的是,这还不足以在 Tensorflow 中使用 GPU,因为当涉及到特定的 Cuda Toolkit + CuDNN 版本集时,TF 的每个版本都可能非常挑剔。我没有 sudo 权限,所以我需要在本地安装所有东西。
nvidia-smi
返回驱动程序版本:465.19.01 CUDA 版本:11.3
python -c "import tensorflow as tf, logging; logging.basicConfig(level=logging.INFO, format='%(asctime)s %(message)s'); tf.config.list_physical_devices('GPU');"
返回
2021-05-11 10:56:26.737279:W tensorflow/stream_executor/platform/default/dso_loader.cc:60] 无法加载动态库“libcudart.so.11.0”; dlerror:libcudart.so.11.0:无法打开共享对象文件:没有这样的文件或目录
2021-05-11 10:56:26.737338: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] 如果您的机器上没有设置 GPU,请忽略上面的 cudart dlerror。
2021-05-11 10:56:28.313896:我 tensorflow/compiler/jit/xla_cpu_device.cc:41] 未创建 XLA 设备,未设置 tf_xla_enable_xla_devices
2021-05-11 10:56:28.315540: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] 成功打开动态库 libcuda.so.1
2021-05-11 10:56:28.324232: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:941] 从 SysFS 读取的成功 NUMA 节点具有负值 (-1),但必须至少有一个 NUMA 节点,因此返回NUMA 节点零
2021-05-11 10:56:28.324707:我 tensorflow/core/common_runtime/gpu/gpu_device.cc:1720] 找到具有属性的设备 0:
pciBusID:0000:00:05.0 名称:NVIDIA Tesla P100-PCIE-12GB 计算能力:6.0
coreClock:1.3285GHz coreCount:56 deviceMemorySize:11.91GiB deviceMemoryBandwidth:511.41GiB/s
2021-05-11 10:56:28.324867: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:941] 从 SysFS 读取的成功 NUMA 节点具有负值 (-1),但必须至少有一个 NUMA 节点,因此返回NUMA 节点零
2021-05-11 10:56:28.325293: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1720] 找到具有属性的设备 1:
pciBusID:0000:00:06.0 名称:NVIDIA Tesla P100-PCIE-12GB 计算能力:6.0
coreClock:1.3285GHz coreCount:56 deviceMemorySize:11.91GiB deviceMemoryBandwidth:511.41GiB/s
2021-05-11 10:56:28.325438:W tensorflow/stream_executor/platform/default/dso_loader.cc:60] 无法加载动态库“libcudart.so.11.0”; dlerror:libcudart.so.11.0:无法打开共享对象文件:没有这样的文件或目录
2021-05-11 10:56:28.325563:W tensorflow/stream_executor/platform/default/dso_loader.cc:60] 无法加载动态库“libcublas.so.11”; dlerror:libcublas.so.11:无法打开共享对象文件:没有这样的文件或目录
2021-05-11 10:56:28.325706:W tensorflow/stream_executor/platform/default/dso_loader.cc:60] 无法加载动态库“libcublasLt.so.11”; dlerror:libcublasLt.so.11:无法打开共享对象文件:没有这样的文件或目录
2021-05-11 10:56:28.325820:W tensorflow/stream_executor/platform/default/dso_loader.cc:60] 无法加载动态库“libcufft.so.10”; dlerror:libcufft.so.10:无法打开共享对象文件:没有这样的文件或目录
2021-05-11 10:56:28.325931:W tensorflow/stream_executor/platform/default/dso_loader.cc:60] 无法加载动态库“libcurand.so.10”; dlerror:libcurand.so.10:无法打开共享对象文件:没有这样的文件或目录
2021-05-11 10:56:28.326028:W tensorflow/stream_executor/platform/default/dso_loader.cc:60] 无法加载动态库“libcusolver.so.10”; dlerror:libcusolver.so.10:无法打开共享对象文件:没有这样的文件或目录
2021-05-11 10:56:28.326117:W tensorflow/stream_executor/platform/default/dso_loader.cc:60] 无法加载动态库“libcusparse.so.11”; dlerror:libcusparse.so.11:无法打开共享对象文件:没有这样的文件或目录
2021-05-11 10:56:28.326215:W tensorflow/stream_executor/platform/default/dso_loader.cc:60] 无法加载动态库“libcudnn.so.8”; dlerror:libcudnn.so.8:无法打开共享对象文件:没有这样的文件或目录
2021-05-11 10:56:28.326230: W tensorflow/core/common_runtime/gpu/gpu_device.cc:1757] 无法打开某些 GPU 库。如果您想使用 GPU,请确保正确安装了上述缺少的库。按照https://www.tensorflow.org/install/gpu 的指南,了解如何为您的平台下载和设置所需的库。
跳过注册 GPU 设备...
这表明 GPU 不会在 TF 应用程序中使用。
我不得不花一些时间设置虚拟机,所以我将在下面逐步发布我的解决方案。
【问题讨论】:
标签: python tensorflow ubuntu ubuntu-20.04