1.anaconda3的安装
本部分参考以下博文:
https://blog.csdn.net/hgdwdtt/article/details/78633232
https://blog.csdn.net/qq_15192373/article/details/81091098
主要按照第二篇博文的过程安装,只是没有做最后一步(即设置anaconda的python作为系统默认的python),此处就不复制粘贴了,不过运行了第一篇博文中的一条命令:
sudo apt-get install libcupti-dev
#据博主说是准备tensorflow-gpu的环境,不清楚有没有用,暂时写在这里
2.tensorflow的安装
完全按照tensorflow官方教程步骤一次成功,不过没有创建新的虚拟环境(毕竟我的python只用来写tensorflow),在此之前我已经安装好了GPU驱动,具体参考我的另一篇https://blog.csdn.net/u012796629/article/details/86583560
GPU支持:
https://tensorflow.google.cn/install/gpu
虽然教程里是16.04的安装,不过完全复制过来在18.04中使用没有出现问题,按照下列命令一条一条执行即可
# Add NVIDIA package repository 添加NVIDIA安装包的仓库
sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.1.85-1_amd64.deb
sudo apt install ./cuda-repo-ubuntu1604_9.1.85-1_amd64.deb
wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/nvidia-machine-learning-repo-ubuntu1604_1.0.0-1_amd64.deb
sudo apt install ./nvidia-machine-learning-repo-ubuntu1604_1.0.0-1_amd64.deb
sudo apt update
# Install CUDA and tools. Include optional NCCL 2.x
# 安装CUDA9.0和tools.包括了可选的NCCL 2.X
# NCCL 可实现多 GPU 支持。
sudo apt install cuda9.0 cuda-cublas-9-0 cuda-cufft-9-0 cuda-curand-9-0 \
cuda-cusolver-9-0 cuda-cusparse-9-0 libcudnn7=7.2.1.38-1+cuda9.0 \
libnccl2=2.2.13-1+cuda9.0 cuda-command-line-tools-9-0
# Optional: Install the TensorRT runtime (must be after CUDA install)
# 可选项:安装TensorRT
# TensorRT 可缩短在某些模型上进行推断的延迟并提高吞吐量。
sudo apt update
sudo apt install libnvinfer4=4.1.2-1+cuda9.0
tensorflow-gpu:
https://tensorflow.google.cn/install/pip
由于安装的是anaconda3,所以python版本是3.7,但是tensorflow目前最高只支持到3.6,因此需要回退一下python版本(当然如果创建了新的虚拟环境,那么就不用回退base的python版本了,只需要激活新的虚拟环境即可,但虚拟环境下安装的话请按照官方教程中的步骤来)
2.1回退python版本
conda install python=3.6
2.2激活base环境并安装tensorflow-gpu
conda activate base
pip install --upgrade tensorflow-gpu
2.3检查安装效果并退出虚拟环境
python -c "import tensorflow as tf; tf.enable_eager_execution(); print(tf.reduce_sum(tf.random_normal([1000, 1000])))"
输出以下内容表示安装成功(主要是最后一行)
退出环境
conda deactivate
补充:
关于CUDAtoolkit和cudnn,conda安装的时候会自动配置相关依赖项,如下图可以看到依赖项中存在cudnn和CUDAtoolkit