赞
踩
简单总结下我安装的环境及过程:
超详细的安装教程戳:PyTorch深度学习快速入门教程(绝对通俗易懂!)【小土堆】
具体我是参考 Win10下安装tensorflow详细过程 来安装的。
注意
:教程中的清华镜像地址找不到了,教程后面也有提到这个问题。
测试安装成功与否的过程出现了如下的错误:
后来从windows环境下tensorflow安装过程详解得知测试代码有误。
通过pip list
可知,我安装的tensorflow
版本是2.6.2,因此测试代码为:
import tensorflow as tf
tf.compat.v1.disable_eager_execution()
sess =tf.compat.v1.Session()
a = tf.constant(10)
b = tf.constant(12)
sess.run(a+b)
22
具体原因可参考2.0版本tensorflow中session和eager_execution的bug
使用CPU跑代码还是太慢啦,看到有人说“使用pip来安装,pip安装后自带gpu支持,不需要额外安装gpu版本”以及“1.15以上的新版本的tensorflow,安装不再区分gpu还是cpu”。但我的tensorflow版本正好是1.15,因此我也不知道是否符合上述条件,但无论如何我都要安装GPU版本的。
(1)在虚拟环境下输入:
import tensorflow as tf
tf.test.is_gpu_available()
结果为FALSE,如下图所示:
(2)在Python文件下运行:
import tensorflow as tf
tf.test.is_gpu_available()
结果如下图所示:
随后查看经验贴知,尽管我的电脑上有CUDA的版本信息,但是若查不到其版本信息,说明还是要下载CUDA和cuDNN,有可能电脑上自带的CUDA只是driver。
win+R打开cmd,输入nvidia-smi,即可看到支持的cuda版本是11.6
在这一步一定要想好自己想要安装的TensorFlow-GPU是什么版本的,随后再选择安装对应的CUDA和cuDNN的版本,一定要版本对应好!!!
版本对应查询地址:https://tensorflow.google.cn/install/source_windows?hl=en
随后的安装,找好自己对应的版本,再按照我接下来的教程一步步跟着走即可。
接下来下载CUDA,这里选择的版本不能高于你的显卡驱动里面那个版本号,由于我的是11.6,且系统是win10,所以我这里选择的是11.5。
下载后,接下来安装CUDA
安装cuda时,第一次会让设置临时解压目录,第二次会让设置安装目录;
临时解压路径,建议默认即可,也可以自定义。安装结束后,临时解压文件夹会自动删除;
安装目录,建议默认即可;
注意:临时解压目录不要和cuda的安装路径设置一样,否则安装结束,会找不到安装目录!此处我将临时安装目录设置到非系统盘路径,但是注意要选择空文件夹,否则会报错。
在上图中,首次安装要全选,多次安装后只选第一个即可。
接下来的安装路径默认即可,否则后续会出现路径问题。
打开控制面板即可发现安装了一大堆配置和驱动文件
查看环境变量
需要在系统环境变量中有上述四个变量,这是自动生成的。
验证CUDA是否安装成功:win+R键运行cmd,输入nvcc --V
此时,CUDA安装已经成功,但是在完成张量加速运算时还需要cuDNN的辅助,因此下面安装cuDNN。
cuDNN地址如下,不过要注意的是,我们需要注册一个账号,才可以进入到下载界面。我下载的CUDA是11.5,因此cuDNN可以下载8.3.3的。
下载下来的是个压缩包,解压缩即可,
打开CUDA所在的目录C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5
将cuDNN下载的文件夹下的文件复制到CUDA的同名称文件中。
复制时看到,CUDA 的安装目录中,有和 cuDNN 解压缩后的同名文件夹,这里注意,不需要担心,直接复制即可。cuDNN 解压缩后的同名文件夹中的配置文件会添加到 CUDA安装目录中的同名文件夹中。【此处还是建议还是分别把文件夹的内容复制到对应文件夹中去】
随后在系统变量中加入这四个地址:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5\lib
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5\libnvvp
验证cuDNN是否安装成功:win+R键运行cmd,输入
cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5
cd .\extras\demo_suite
.\bandwidthTest.exe
.\deviceQuery
以上都安装好后,再测试一下,我电脑上安装的TensorFlow1.15版的可以直接使用GPU吗?
由上图可知,还是不行。
环境名为tensorflow-gpu,python为3.6版本的
conda create -n tensorflow-gpu python=3.6
进入环境的命令:conda activate tensorflow-gpu
退出环境命令为:conda deactivate
使用镜像(https://pypi.tuna.tsinghua.edu.cn/simple)安装更快
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu==1.15.0
import tensorflow as tf
tf.test.is_gpu_available()
还是FALSE,我觉得是版本不对应,一开始我以为是向下兼容的,所以选了个较新的CUDA版本
版本对应查看链接:https://tensorflow.google.cn/install/source_windows?hl=en
由于我要安装TensorFlow-GPU的1.15版本,查看对应CUDA10版和cuDNN7.4版,因此我又安装了这两个。
查阅资料可知:
windows多个不同版本的CUDA使用时不需要切换,只要环境变量PATH中有相应的CUDA路径即可,无需手动切换了。
tensorflow在运行的时候会自动在环境变量中寻找合适的CUDA版本,直到找到为止,如果没有,则会报错。
配好之后,再验证即为True
。
此时C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA
地址下有两个版本的CUDA。
If you want to see a list of allocated tensors when OOM happens, add report_tensor_allocations_upon_oom to RunOptions for current allocation info.
上面的报错是由于GPU显存不够导致的,可以把batch_size、epoch减小或者使用CPU运行。
我并不想减少我的参数,于是我就从自己的笔记本转到课题组里的工作站上跑代码,然后就遇到了下面的问题。
还有其他教程写的解决方法如下:
config = tf.ConfigProto() # tf.ConfigProto()主要的作用是配置tf.Session的运算方式,比如gpu运算或者cpu运算
config.gpu_options.per_process_gpu_memory_fraction = 0.5 # 程序最多只能占用指定gpu50%的显存
config.gpu_options.allow_growth = True # 当使用GPU时候,Tensorflow运行自动慢慢达到最大GPU的内存
tf.Session(config=config)
我原本的代码中就有这些语句,所以这个方法对于我的代码没用。
failed to run cuBLAS routine cublasSgemm_v2: CUBLAS_STATUS_EXECUTION_FAILED Blas GEMM launch failed
看到这位老哥的回答,太绝望了!!!的确30系显卡不支持cuda11以下版本!!!
没办法只能想其他方案,没办法只能使用TensorFlow2.0以上的版本了!
将代码中含有的
import tensorflow as tf
都改为:
import tensorflow._api.v2.compat.v1 as tf
tf.disable_v2_behavior()
记得每个文件都要改一下哦~~~
PyTorch深度学习快速入门教程(绝对通俗易懂!)【小土堆】
windows环境下tensorflow安装过程详解
Win10下安装tensorflow详细过程
CPU和GPU的区别、工作原理、及如何tensorflow-GPU安装等操作
TensorFlow安装和下载(超详细)
2.0版本tensorflow中session和eager_execution的bug
CUDA与cuDNN安装教程(超详细)
Cuda和cuDNN安装教程(超级详细)
windows下同一个显卡配置多个CUDA工具包以及它们之间的切换
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。