詳解Tensorflow不同版本要求與CUDA及CUDNN版本對應關係
參考官網地址:
Windows端:https://tensorflow.google.cn/install/source_windows
CPU
Version | Python version | Compiler | Build tools |
---|---|---|---|
tensorflow-1.11.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.10.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.9.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.8.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.7.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.6.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.5.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.4.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.3.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.2.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.1.0 | 3.5 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.0.0 | 3.5 | MSVC 2015 update 3 | Cmake v3.6.3 |
GPU
Version | Python version | Compiler | Build tools | cuDNN | CUDA |
---|---|---|---|---|---|
tensorflow_gpu-1.11.0 | 3.5-3.6 | MSVC 2015 update 3 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.10.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.9.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.8.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.7.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.6.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.5.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.4.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 6 | 8 |
tensorflow_gpu-1.3.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 6 | 8 |
tensorflow_gpu-1.2.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 5.1 | 8 |
tensorflow_gpu-1.1.0 | 3.5 | MSVC 2015 update 3 | Cmake v3.6.3 | 5.1 | 8 |
tensorflow_gpu-1.0.0 | 3.5 | MSVC 2015 update 3 | Cmake v3.6.3 | 5.1 | 8 |
Linux端:https://tensorflow.google.cn/install/source
Linux
Version | Python version | Compiler | Build tools |
---|---|---|---|
tensorflow-1.11.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.15.0 |
tensorflow-1.10.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.15.0 |
tensorflow-1.9.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.11.0 |
tensorflow-1.8.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.10.0 |
tensorflow-1.7.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.10.0 |
tensorflow-1.6.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.9.0 |
tensorflow-1.5.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.8.0 |
tensorflow-1.4.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.5.4 |
tensorflow-1.3.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.4.5 |
tensorflow-1.2.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.4.5 |
tensorflow-1.1.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.4.2 |
tensorflow-1.0.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.4.2 |
Version | Python version | Compiler | Build tools | cuDNN | CUDA |
---|---|---|---|---|---|
tensorflow_gpu-1.11.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.10.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.9.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.11.0 | 7 | 9 |
tensorflow_gpu-1.8.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.10.0 | 7 | 9 |
tensorflow_gpu-1.7.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.9.0 | 7 | 9 |
tensorflow_gpu-1.6.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.9.0 | 7 | 9 |
tensorflow_gpu-1.5.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.8.0 | 7 | 9 |
tensorflow_gpu-1.4.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.5.4 | 6 | 8 |
tensorflow_gpu-1.3.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.4.5 | 6 | 8 |
tensorflow_gpu-1.2.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.4.5 | 5.1 | 8 |
tensorflow_gpu-1.1.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.4.2 | 5.1 | 8 |
tensorflow_gpu-1.0.0 | 2.7,3.3-3.6 | GCC 4.8 | Bazel 0.4.2 | 5.1 | 8 |
macOS
CPU
Version | Python version | Compiler | Build tools |
---|---|---|---|
tensorflow-1.11.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.15.0 |
tensorflow-1.10.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.15.0 |
tensorflow-1.9.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.11.0 |
tensorflow-1.8.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.10.1 |
tensorflow-1.7.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.10.1 |
tensorflow-1.6.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.8.1 |
tensorflow-1.5.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.8.1 |
tensorflow-1.4.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.5.4 |
tensorflow-1.3.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.4.5 |
tensorflow-1.2.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.4.5 |
tensorflow-1.1.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.4.2 |
tensorflow-1.0.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.4.2 |
GPU
Version | Python version | Compiler | Build tools | cuDNN | CUDA |
---|---|---|---|---|---|
tensorflow_gpu-1.1.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.4.2 | 5.1 | 8 |
tensorflow_gpu-1.0.0 | 2.7,3.3-3.6 | Clang from xcode | Bazel 0.4.2 | 5.1 | 8 |
tensorflow的CUDA driver version is insufficient for CUDA runtime version 問題解決方案
CUDA driver version is insufficient for CUDA runtime version 翻譯過來就是CUDA的驅動程式版本跟CUDA的執行時版本不匹配!
1.CUDA driver version(驅動版本):就是NVIDIA GPU的驅動程式版本;
檢視命令:nvidia-smi
我們看到我的GPU的驅動程式版本是:384.81
2.CUDA runtime version(執行時版本):是在python中安裝的cudatoolkit和cudnn程式包的版本
檢視命令:pip list
python安裝的cudatoolkit和cudnn程式包版本是:9.2
3.nvidia 驅動和cuda runtime 版本對應關係
執行時版本 驅動版本
CUDA 9.1 387.xx
CUDA 9.0 384.xx
CUDA 8.0 375.xx (GA2)
CUDA 8.0 367.4x
CUDA 7.5 352.xx
CUDA 7.0 346.xx
CUDA 6.5 340.xx
CUDA 6.0 331.xx
CUDA 5.5 319.xx
CUDA 5.0 304.xx
CUDA 4.2 295.41
CUDA 4.1 285.05.33
CUDA 4.0 270.41.19
CUDA 3.2 260.19.26
CUDA 3.1 256.40
CUDA 3.0 195.36.15
4.解決方案
從驅動和執行時的版本對應關係來看,版本為384.81的驅動程式 對應的 執行時版本是9.0,也就是說我們在python中安裝cudatoolkit和cudnn程式包版本9.2是過高了。
因為系統中依賴GPU驅動的程式比較多,一般出現這種情況,我們都是更改cudatoolkit和cudnn程式包的版本。
於是,先解除安裝python中安裝cudatoolkit和cudnn程式包:pip uninstallcudnn ;pip uninstallcudatoolkit
然後安裝對應版本的cudatoolkit和cudnn程式包:pip installcudatoolkit=9.0;pip installcudnn
5.為什麼會出現這種情況呢:
一般出現這種情況是因為在python中安裝tensorflow的gpu版本時,pip會檢查tensorflow依賴的其他的包,如果依賴的包沒有安裝,則會先安裝最新版本的依賴包。這時候tensorflow的gpu版本依賴cudatoolkit和cudnn程式包,pip就會安裝最新版本的cudatoolkit和cudnn程式包,最終導致gpu驅動版本和cuda執行時版本不匹配。
到此這篇關於詳解Tensorflow不同版本要求與CUDA及CUDNN版本對應關係的文章就介紹到這了,更多相關Tensorflow CUDA及CUDNN版本對應內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!