我有以下配置:
- SUSE Linux Enterprise Server 12 SP3(x86_64)
- CUDA 工具包:CUDA 9.2(9.2.148 更新 1)
- CUDA 驱动程序版本:396.37
根据 NVIDIA 的说法恰到好处(https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#major-components)。
我使用 Anaconda 建立了一个新环境并在其中安装了 tensorflow-gpu:
conda create -n keras python=3.6.8 anaconda
conda install -c anaconda tensorflow-gpu
但如果我想通过以下方式检查安装情况Python安慰:
import tensorflow as tf
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
我收到以下错误:
2019-04-17 15:23:45.753926:I tensorflow/core/platform/cpu_feature_guard.cc:141]您的 CPU 支持此 TensorFlow 二进制文件未编译使用的指令:SSE4.1 SSE4.2 AVX AVX2 FMA
2019-04-17 15:23:45.793109:I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU频率:2600180000 Hz
2019-04-17 15:23:45.798218:I tensorflow/compiler/xla/service/service.cc:150] XLA 服务 0x561f42601240 正在平台 Host 上执行计算。设备:
2019-04-17 15:23:45.798258:I tensorflow/compiler/xla/service/service.cc:158] StreamExecutor 设备(0):,
2019-04-17 15:23:45.981727:I tensorflow/compiler/xla/service/service.cc:150] XLA 服务 0x561f426ad9b0 在平台 CUDA 上执行计算。设备:
2019-04-17 15:23:45.981777:I tensorflow/compiler/xla/service/service.cc:158] StreamExecutor 设备(0):Tesla K40c,计算能力 3.5
2019-04-17 15:23:45.982175:I tensorflow / core / common_runtime / gpu / gpu_device.cc:1433]找到具有以下属性的设备 0:
名称:Tesla K40c 主要:3 次要:5 内存时钟速率(GHz):0.745 pciBusID:0000:06:00.0 总内存:11.17GiB 可用内存:11.09GiB
2019-04-17 15:23:45.982206:I tensorflow/core/common_runtime/gpu/gpu_device.cc:1512]添加可见的 gpu 设备:0
回溯(最近一次调用最后一次):文件“”,第 1 行,位于文件“/home/fuchs/.conda/envs/keras/lib/python3.6/site-packages/tensorflow/python/client/session.py”,第 1551 行,位于在里面 超级(会话,自我)。在里面(目标,图形,配置 = 配置)文件“/home/fuchs/.conda/envs/keras/lib/python3.6/site-packages/tensorflow/python/client/session.py”,第 676 行,位于在里面 self._session = tf_session.TF_NewSessionRef(self._graph._c_graph, opts) tensorflow.python.framework.errors_impl.InternalError: cudaGetDevice() 失败。状态:CUDA 驱动程序版本不足以支持 CUDA 运行时版本
我一直在向其他人寻求解决此问题的方法,但大多数情况下是因为 CUDA 工具包和驱动程序版本不匹配。而我的情况并非如此。
我将非常感谢您的帮助。
答案1
抱歉,我已经自己找到了解决方案。我的错误是,我使用Python版本 >3.5。在这种情况下,如果您执行以下命令,将安装 tensorflow-gpu=1.13:
conda install -c anaconda tensorflow-gpu
但是,如果您创建一个带有 python=3.5 的环境,则会安装 tensorflow-gpu=1.10,它适用于此 CUDA 版本。