一. 准备
所需的安装
- 已申请GCP(Google Cloud Platform)并创建intsance
- 已申请GCP gpu 额度
- 可ssh 连接到GCP instance
二. 安装CUDA
在使用Tensorflow-gpu版本时,需要提前安装显卡驱动程序CUDA.
找好自己需要的Tenorflow版本,就可以开始CUDA的安装了。下面以安装CUDA 9.0为例,同时也列出了如果需要更高版本的CUDA,如何在现有的版本基础上进行升级。
# get cuda-9.0 driver
curl -O https://developer.download.nvidia.cn/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.0.176-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1604_9.0.176-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda-9-0
# if you need update to cuda 10.0 or higher, use the following codes and modify it as you need, otherwise ignore it.
sudo apt-get install cuda-10-0
sudo nvidia-smi -pm 1
sudo nvidia-smi -ac 2505,875 # performance optimziation from google suggestion
CUDA完成安装后,需要将cuda路径加入到系统的环境变量中:
# add to environment variable
echo 'export CUDA_HOME=/usr/local/cuda' >> ~/.bashrc
echo 'export PATH=$PATH:$CUDA_HOME/bin' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=$CUDA_HOME/lib64' >> ~/.bashrc
source ~/.bashrc
正常情况下,按照上面的步骤操作完成,CUDA就已经安装好了,这时候可以在终端输入nvidia-smi
确认输出结果,若可以看到GPU型号,CUDA version等,表示操作成功。
三. 安装cuDNN
cuDNN(CUDA Deep Neural Network library)是NVIDIA提供的加速神经网络计算的支持库。安装之前要先在NVIDIA Developer Program 申请开发者账号(申请很迅速,只需要邮箱即可)。这里以安装 cuDNN v7.5.0 (Feb 21, 2019), for CUDA 9.0为例。下载好cuDNN Library for Linux之后,将其上传到GCP的目录中,在该目录中执行:
tar xzvf cudnn-9.0-linux-x64-v7.5.0.56.tgz
sudo cp cuda/lib64/* /usr/local/cuda/lib64/
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
rm -rf ~/cuda
rm cudnn-9.0-linux-x64-v7.5.0.56.tgz
四. 安装Tensorflow
1. 安装环境
-
Anaconda
这里我推荐使用anaconda进行服务器上的包管理,当然Tensorflow也在conda下进行安装。
-
Virtual enviroment
使用官方推荐的虚拟环境的安装方式进行Tensorflow的安装,这样可以灵活的管理不同项目所需的操作环境,如python2和python3。
2. 开始安装
-
使用conda创建python 2.7环境:
~$ conda create --name tensorflow python=2.7
-
激活安装的环境:
~$ source activate tensorflow
此时在终端命令行之前应会出现带有括号的(tensorflow)
。
-
在虚拟环境中安装tensorflow
~$ pip install --upgrade tensorflow-gpu
至此安装已完成,可以通过执行相应的文件进行测试。
参考文章
[1] 在 Google Cloud Platform 上使用 GPU 和安裝深度學習相關套件
[2] Ubuntu + CUDA9.0 + tensorflow-gpu 安装过程