在 Ubuntu 上为 TensorFlow GPU 应该安装哪个版本的 CuDNN?
问题:
你已按照我之前的博文修复 Ubuntu 上 TensorFlow libcublas.so.8.0: cannot open shared object file了解如何安装 CuBLAS 等以使 TensorFlow 工作。
现在你收到类似这样的错误消息:
ImportError: libcudnn.so.6: cannot open shared object file: No such file or directory你想知道如何安装 CuDNN,因为它不能从你的
解决方案
要安装 CuDNN,首先转到 NVIDIA CuDNN 页面。在撰写本文时,只有拥有 NVIDIA 帐户才能下载 CuDNN,因此如果没有帐户你需要注册(点击Join)或如果已有帐户则Login。
在 CuDNN 下载页面你有几个版本的 CuDNN 可选。不要只下载最新的,因为 TensorFlow 需要特定的版本。
查看你的错误消息:它告诉你 TensorFlow 缺少 libcudnn.so.6 - 你能看到该字符串中的 6 吗?这意味着你需要 CuDNN 6.x(TensorFlow 1.5.0,在撰写本文时,始终需要 CuDNN 6.x)。虽然你可以与 6.x 并行安装 CuDNN 7.x、8.x、9.x,
选择正确版本后,你需要选择包类型。
第一个重要选择是你想要开发者包还是仅运行时包。你不需要开发者包来运行 TensorFlow,即使你正在使用 TensorFlow 开发应用程序! 只需选择运行时包。
关于包类型,当然如果你在 Linux 上,你绝对需要选择 linux 包。如果你使用 Ubuntu 16.04+,最简单的选择是选择 cuDNN v6.0 Runtime Library for Ubuntu16.04 (Deb) - 即使名称暗示它只支持 16.04,此包在 Ubuntu 17.04 和 17.10 上也完美运行。
我建议下载 Ubuntu 16.04 DEB 包选项,除非你有特定理由不使用它。