1.环境
- 系统:Windows 2012 Server(预装cuda10.1)
2.安装TensorflowGPU
TensorflowGPU2.0安装:参考博客2。
3.安装CUDA10.0
服务器预装的是CUDA10.1,而TF2.0.0-alpha对应的CUDA版本是10.0,两者版本匹配才能正常运行,否则会报导入错误,如图1:
面对错误,我们首先使用
nvidia-smi
查看gpu的运行状态,如图2。发现CUDA版本号对应不上。
与云服务器的支持人员沟通后,他给出了问题的原因(图3):
于是,我们重新安装CUDA10.0(Windows 2012 Server可以使用Windows7版本的安装包)和对应版本的CUDNN(7.6.5 Windows7版本)进行安装,参考博客1。重点是配置环境变量,尽量多的添加上。我们这里重点在解决版本问题,不赘述了。
安装好后,使用
nvcc - V
可以发现CUDA版本变成10.0,但是使用 nvidia-smi 命令仍然不行。百思不得其解。
后来发现,GPU计算所需的程序包含两个部分,一部分是CUDA和CUDNN,使用 nvcc -V 检测;另一部分是Driver,也就是驱动,需要安装与CUDA10.0对应的版本驱动。使用nvidia-smi可以检测它的状态。下载安装Driver后TF2.0.0成功运行。测试用例见博客2。