说在最前面,tensorflow-gpu的安装使用最重要的就是版本要对应,不然会出现很多错误,仔细看清楚代码要求的版本,安装对应的cuda和cudnn版本才能运行。可以看下图
要求:
pip 19.0及以上
python3.5~3.7
查看版本命令,终端输入
python3 --version
pip --versionvirtualenv
--version
如果没有更换软件源,可以更换国内源,之后下载会更快,不然可能出现超时错误。ubuntu下更换源可以在界面左下——应用程序——软件和更新——下载自——其它站点选择合适的站点。
更改pip源也是有必要的,pip升级也可以使用国内源,这里以pypi为例,先是升级命令
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U 安装pip
更改pip源命令
pip install pip -U pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
如果没有装,安装命令如下:
sudo apt update sudo apt install python3-dev python3-pip sudo pip3 install -U virtualenv
创建虚拟环境,环境名称为venv:
virtualenv --system-site-packages -p python3 ./venv
进入venv环境:
source ./venv/bin/activate # 注意此时终端应该是在主目录下,venv也被创建在主目录下,成功进入可以看到终端提示符有(venv)显示
虚拟环境下的python相当于初始化,需要重新安装其他库,不过首先还是升级pip和修改pip源。
pip install --upgrade pip #升级pip pip list #查看当前已安装哪些库
退出虚拟环境命令:
deactivate
安装tensorflow2.2.0
pip install --upgrade tensorflow==2.2.0 python -c "import tensorflow as tf;print(tf.reduce_sum(tf.random.normal([1000, 1000])))" #验证安装结果
安装tensorflow-gpu2.2.0
pip install --upgrade tensorflow-gpu==2.2.0 #可能会出现超时错误,可以通过方向键上找到之前命令,重新安装
ubuntu1804安装cuda10.1(适合tensorflow1.13.0以上版本)
1 wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.1.243-1_amd64.deb 2 sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub 3 sudo dpkg -i cuda-repo-ubuntu1804_10.1.243-1_amd64.deb 4 sudo apt-get update 5 wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb 6 sudo apt install ./nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb 7 sudo apt-get update 8 #下载添加nvidia包
sudo apt-get install --no-install-recommends nvidia-driver-430 #驱动安装,一般非虚拟机环境下都已经装了nvidia驱动,这一步不需要,不过要主要版本,cuda10.1要430以上的驱动。 #安装完后重启 ,重新进入venv虚拟环境,用一下命令查看是否安装成功 nvidia-smi
安装cudnn7.6
sudo apt-get install --no-install-recommends cuda-10-1 libcudnn7=7.6.4.38-1+cuda10.1 libcudnn7-dev=7.6.4.38-1+cuda10.1 #有2个多G,需要下载一段时间,如果出现超时错误重新下载
安装tensorRT:
sudo apt-get install -y --no-install-recommends libnvinfer6=6.0.1-1+cuda10.1 libnvinfer-dev=6.0.1-1+cuda10.1 libnvinfer-plugin6=6.0.1-1+cuda10.1
上述步骤都完成后可以验证tensorflow-gpu是否可以使用,可以复制以下代码,创建一个.py文件,在终端利用python进行测试:
1 import tensorflow as tf 2 a = tf.test.is_built_with_cuda() # 判断CUDA是否可以用 3 b = tf.test.is_gpu_available( 4 cuda_only=False, 5 min_cuda_compute_capability=None 6 ) # 判断GPU是否可以用 7 print(a) #成功返回True 8 print(b) #成功返回True
成功结果显示,我用的是1660ti。
主要参考:https://tensorflow.google.cn/install/pip