有个常识很重要,但是如果没人告诉,还真不容易知道,那就是以下这六个跟GPU计算相关的重要组件是密切关联的:
1. python版本
2. tensorflow版本
3. anaconda版本
4. cuda版本
5. 显卡驱动版本
6. PyTorch版本
(我的版本:python3.6.4,tensorflow-gpu为1.10.1,cuda版本为9.0)
例如,你已经安装了anaconda,而里面已经默认含了python3,为啥下面老找不到tensorflow的某个版本呢?现象如下
(base) $ pip install tensorflow-gpu==1.10.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting tensorflow-gpu==1.10.0
ERROR: Could not find a version that satisfies the requirement tensorflow-gpu==1.10.0 (from versions: 1.13.1, 1.13.2, 1.14.0, 1.15.0rc0, 1.15.0rc1, 1.15.0rc2, 1.15.0rc3, 1.15.0, 1.15.2, 1.15.3, 1.15.4, 1.15.5, 2.0.0a0, 2.0.0b0, 2.0.0b1, 2.0.0rc0, 2.0.0rc1, 2.0.0rc2, 2.0.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.1.0rc0, 2.1.0rc1, 2.1.0rc2, 2.1.0, 2.1.1, 2.1.2, 2.1.3, 2.2.0rc0, 2.2.0rc1, 2.2.0rc2, 2.2.0rc3, 2.2.0rc4, 2.2.0, 2.2.1, 2.2.2, 2.3.0rc0, 2.3.0rc1, 2.3.0rc2, 2.3.0, 2.3.1, 2.3.2, 2.4.0rc0, 2.4.0rc1, 2.4.0rc2, 2.4.0rc3, 2.4.0rc4, 2.4.0, 2.4.1, 2.5.0rc0, 2.5.0rc1)
ERROR: No matching distribution found for tensorflow-gpu==1.10.0
这是因为tensorflow的版本和python的版本有如下的对应关系,你要安装正确的python版本,才能安装你想要的tensorflow版本。
一、python版本与tensorflow的对应关系表
按照下面的对应关系来安装合适版本的TensorFlow,否则python运行起来容易报错
https://tensorflow.google.cn/install/source#linux
二、python版本与anaconda的对应关系表
解释一下上表。 anaconda在每次发布新版本的时候都会给python3和python2都发布一个包,版本号是一样的。
表格中,python版本号下方的离它最近的anaconda包就是包含它的版本。
举个例子,假设你想安装python2.7.14,在表格中找到它,它下方的三个anaconda包(anaconda2-5.0.1、5.1.0、5.2.0)都包含python2.7.14;
假设你想安装python3.6.5,在表格中找到它,它下方的anaconda3-5.2.0就是你需要下载的包;
假设你想安装python3.7.0,在表格中找到它,它下方的anaconda3-5.3.0或5.3.1就是你需要下载的包;
三、tensorflow与cuda版本对应关系
四、cuda与显卡驱动的对应关系表
五、cuda10.0与Linux系统以及GCC的对应关系
六、CUDA及其可用PyTorch对应版本