TensorFlow 不使用 Nvidia

标签 tensorflow nvidia

尽管安装并配置了 nvidia 驱动程序、cuda 工具包、cudnn,TensorFlow 仍无法使用 nvidia 卡。

我怀疑的一件事是我笔记本电脑上的 nvidia 卡作为 3d Controller 而不是 VGA 连接到 pci:

00:02.0 VGA compatible controller: Intel Corporation Sky Lake Integrated Graphics (rev 07)
Subsystem: ASUSTeK Computer Inc. Skylake Integrated Graphics
Kernel driver in use: i915_bpo

01:00.0 3D controller: NVIDIA Corporation GK208M [GeForce 920M] (rev a1)
Subsystem: ASUSTeK Computer Inc. GK208M [GeForce 920M]
Kernel modules: nvidiafb, nouveau, nvidia_304

即使 Nvidia xserver 设置也看不到 GPU:

enter image description here

tensorflow真的只能使用显卡作为VGA吗?

最佳答案

三个月后,我终于弄清楚了问题所在并解决了它。事实证明这是 nvidia 的安全启动问题。

非常感谢 jorgemf 和 Yao Zhu 在我无法清楚地表达问题时提供的帮助。

同时我希望我的案例可以帮助其他有同样问题的人。

一切都从我今天再次尝试安装 nvidia 驱动程序开始。安装看起来很成功,但最后它说,

无法加载“nvidia-drm”内核模块。

所以我想也许我可以手动加载内核

modprobe mvidia-drm

但出现错误,提示“所需 key 不适用”。想知道这是什么意思,所以用谷歌搜索了一下。原来是应用程序未注册!因此该模块已被安全启动停止!

返回启动设置并禁用安全启动。再次安装nvidia驱动,成功!现在在 Nvidia 设置中它看起来像这样: enter image description here

现在看看 GPU 设备显示在那里。

进一步安装 cuda 和 cudnn。发现这个 github gist super 有用:https://gist.github.com/wangruohui/df039f0dc434d6486f5d4d098aa52d07

最后一步,按照Tensorflow主页上的安装即可。测试它确实在 GPU 上运行!

重要的信息是,如果您无法在 Linux 系统上安装 Nvidia 驱动程序,您可能需要禁用安全启动。个人认为,Windows把这个好主意变成了Linux用户的噩梦!

关于TensorFlow 不使用 Nvidia,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38004013/

相关文章:

python - GradientTape 根据是否由 tf.function 修饰的损失函数给出不同的梯度

pandas - vectorize_sequences 的标准实现

nvidia - 导入 mxnet 时出现 OSError : libnccl. so.2

performance - OpenCL 如何分配工作项?

cuda - 如何用 NVIDIA GPU 解释这个关于 `nvidia-smi` 的数字?

python - 使用 Tensorflow 从 csv 文件加载图像和标签

TensorFlow:读取卡住的模型,添加操作,然后保存到新的卡住模型

android - 尝试使用 NSight 编译 Android 非 native 项目

Matlab GPU计算

python - 你如何以编程方式读取 Tensorboard 文件?