本次安装是在笔记本上的安装。RTX2060, windows10。
tensorFlow官网三者的版本对应关系 https://www.tensorflow.org/install/source_windows
注意!!!按照上图安装依然可能出现问题!我初次按照官方说明的安装的cuda10+tensorflow1.15.0+cudnn7.4,程序内仍然报错。而且JupterNote WEB页面上也没有提示,来到JupterNote控制终端上才发现是基于7.6.0编译的。可见官方也会有错误(或者是其他原因)还是得自己调试。小版本内按新的装可能更好
2020.12.15更新:
TensorFlow 2.4 与 CUDA 11 和 cuDNN 8 配合运行,支持最新发布的英伟达安培架构 GPU,对于 CUDA 11 的新特性,可以参考英伟达开发者博客:https://developer.nvidia.com/blog/cuda-11-features-revealed/
TensorFlow 2.4.0, Python 3.8, CUDA 11, CuDNN 8, Compute 5.2, Ubuntu 20.04
这个新版要求显卡计算性能大于5.2
各个显卡的计算能力参考下面的连接: https://developer.nvidia.com/cuda-gpus#compute
conda 改源 JupterNotebook 支持虚拟环境
https://www.jianshu.com/p/afea092dda1d
https://zhuanlan.zhihu.com/p/87123943
cuda下载地址:https://developer.nvidia.com/cuda-toolkit-archive
cuda10 win10:https://developer.nvidia.com/cuda-10.0-download-archive?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exelocal
CUDA默认的安装位置如上图所示。
CMD测试命令:nvcc -V 安装成功的话如下图所示:
cudnn下载地址:https://developer.nvidia.com/rdp/cudnn-archive
cudnn 解压缩后,把对应目录里的文件拷贝到cuda对应的安装目录里面即可
pip 更改为清华源:pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
安装tesnsorflow:建议在conda虚拟环境里面安装。可在一定程度上避免环境冲突的问题。
Anaconda Prompt (Anaconda3) 里建立名为TFtest 的虚拟环境,python版本为3.7:conda create -n TFtest python=3.7
(Anaconda Prompt安装之后可能出现根目录不存在的问题解决:点我)
激活此环境:conda activate TFtest
在虚拟环境里安装tensorflow 1.15:pip install tensorflow-gpu==1.15.0 (这里安装的是GPU版本的tf)
tensorflow安装的位置为:C:\Users\用户名\.conda\envs\TFtest(建立的虚拟环境)\Lib\site-packages\tensorflow
查看当前虚拟环境里的包:conda list
能够看到安装的tensorflow
Pycharm右上角工程配置,选择python interpreter为上面新建立的conda环境,script path为当前测试文件
Nvidia 命令说明:
https://blog.csdn.net/C_chuxin/article/details/82993350
测试代码:
import tensorflow as tf
with tf.device('/cpu:0'):
a = tf.constant([1.0, 2.0, 3.0], shape=[3], name='a')
b = tf.constant([1.0, 2.0, 3.0], shape=[3], name='b')
with tf.device('/gpu:1'):
c = a + b
# 注意:allow_soft_placement=True表明:计算设备可自行选择,如果没有这个参数,会报错。
# 因为不是所有的操作都可以被放在GPU上,如果强行将无法放在GPU上的操作指定到GPU上,将会报错。
sess = tf.Session(config=tf.ConfigProto(allow_soft_placement=True, log_device_placement=True))
# sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
sess.run(tf.global_variables_initializer())
print(sess.run(c))
如下图所示,可以在GPU上计算。
在Jupyter Notebook里使用conda虚拟环境需要一些特殊方法。创建虚拟环境后在Jupyter Notebook不能直接直接使用该环境。
1、打开Anaconda Prompt,在base环境里安装nb_conda。如果之前在其他的环境里,可以先用命令 conda deactivate 退出当前环境。
conda install nb_conda
执行完毕这一步后,就可以在Jupyter 页面里看到环境了,但是还不能使用特定的虚拟环境。
2、Anaconda Prompt进入到对应的虚拟环境里
conda activate tf1.15
然后安装ipykernel。一定要进入对应的虚拟环境,然后使用conda 安装!亲测使用pip安装ipykernel会不能用。
使用pip安装的ipykernel在conda list命令里找不到这个包,但是用pip list可以找到使用conda安装的包。可见pip 和conda安装python包的方法还是存在一定差异的。
conda install ipykernel
重新启动Jupyter Notebook,然后就能在Jupyter Notebook的界面files -> New找到新的虚拟环境了
参考:正确打开方式——ANACONDA和jupyter安装
如果需要删除虚拟环境,把下面的tf1.15改为所需要删除的虚拟环境的名字。重新启动Jupyter Notebook可以看到Jupyter Notebook里环境里对应选项也被删除。
conda remove -n tf1.15 --all