Ubuntu18.04安装CUDA10.0+cudNN+Anaconda3+tensorflow1.15/tensorflow2.0+Pycharm

0. 背景介绍

显卡:GTX1060 6G (可用命令lspci | grep -i nvidia查看自己显卡型号)作为自己深度学习入门使用
之前跑深度学习一直是在win10上用1.12版本,但其实Ubuntu训练速度比win快多了。于是转到了之前配置的Ubuntu18.04系统下,加上现在出了2.x想熟悉下,查看配置图好像只有1.15和2.0同时兼容一个CUDA,于是准备配置tensorflow1.15+tensorflow2.0的环境。
后续可能在实验室的多个电脑上跑程序,准备使用Pycharm作为IDEA,后续安装Git作为代码版本管理工具。
之前刚配置了两台GTX1080Ti 和RTX2080Ti的机器,Ubuntu20.04的系统比18.04更方便一些,趁着热乎劲把自己的1066也给配了吧。

1. 更换Ubuntu下载源

为了避免ubuntu默认下载源的下载速度过慢,我先在软件和更新里改成了国内的阿里源。
在这里插入图片描述

2. 安装Nvidia驱动

2.1 禁用自带的Nouveau驱动

(1)输入命令lsmod | grep nouveau 若有输出,表示该驱动还在使用
(2)使用命令sudo gedit /etc/modprobe.d/blacklist.conf打开文件,在末尾加入以下两行:

blacklist nouveau
options nouveau modeset=0

保存(Ctrl+S或右上角"保存")并退出。
(3)使用命令sudo update-initramfs -u更新刚才所做的改动
(4)重启电脑sudo reboot。再在终端输入lsmod | grep nouveau命令,若无输出,表示禁用成功。

2.2 安装新的nvidia驱动

使用命令sudo dpkg --list | grep nvidia-*可以查看本机驱动版本

通过以下链接在Nvidia官网查看nvidia驱动与CUDA的版本对应关系https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
在这里插入图片描述
可以看到,CUDA10.0要求nvidia410.48以上的驱动。
然后我们可以直接在Ubuntu的软件和更新里面,选择合适的驱动版本进行安装,我的Ubuntu18上已经安装了nvidia-440,就可以直接跳过了。
在这里插入图片描述
安装完成后,命令行输入nvidia -smi可以查看驱动信息和GPU使用情况:
在这里插入图片描述

3. 安装CUDA10.0

CUDA这里也比较容易出问题,首先我们要去到tensorlfow的官网的install页面 https://tensorflow.google.cn/install/source,查看我们要安装的版本对应的所有环境,上面有所有 tf 版本的环境说明噢,我只截取了前半部分放到下面。
在这里插入图片描述
需要注意的主要是【GCC版本】和【CUDA版本】

3.1 升级GCC7.3.1

【查看和安装gcc/g++版本的命令】
ll /usr/bin/gcc*查看本机所有已安装gcc版本
gcc -v 查看本机的默认gcc版本
sudo apt-get install gcc-7 安装gcc-7版本
g++命令与上述相同,只需把gcc改成g++

我的gcc/g++只有4.8版本,所以需要升级,这里选择不卸载旧版本,使可以在多个版本之间切换以备不时之需:
(1)安装gcc-7和g++7 sudo apt-get install gcc-7 g++7
(2)使用update-alternatives设置gcc和g++各个版本的优先级,优先级用数字表示,数字越大优先级越高。
把gcc-4.8版本设为10的优先级:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 10 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8
把g+±7版本设为30的优先级:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 30 --slave /usr/bin/g++ g++ /usr/bin/g++-7
(3)使用命令sudo update-alternatives --config gcc选择想用的版本,输入编号再回车即可,如下图所示:
在这里插入图片描述
其实在第(2)步设置完优先级之后已经自动调整为7版本了,所以第(3)步可以跳过,以后要切换版本再使用。
这时候再用命令gcc -vg++ -v看默认环境都已经变成了7的版本。

3.2 CUDA10.0安装

去到nvidia官网的CUDA历史版本页https://developer.nvidia.com/cuda-toolkit-archive
,选择 “CUDA Toolkit 10.0” 进入下载页,根据本机环境下载runfile文件(ubuntu18以上的也都选18.04)如下图:
在这里插入图片描述
下载完毕后,在下载文件夹下打开终端,输入命令sudo sh cuda_10.0.130_410.48_linux.run启动安装程序,按住回车拖完说明页,然后按照指令进行如下图操作:
在这里插入图片描述
注意第二个是安装驱动的选项,要选no,我们已经安装了nvidia驱动了。
安装完成后如下图,可能会有一些warning,可以忽略。
在这里插入图片描述
【添加环境变量】
(1)命令行打开.bashrc文件gedit ~/.bashrc
(2)在末尾写入以下两句,保存(Ctrl+S或右上角点击"保存")后退出

export PATH=/usr/local/cuda-10.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64:$LD_LIBRARY_PATH

(3)执行命令source ~/.bashrc使所作改动生效
(4)执行命令nvcc -V查看环境变量是否设置成功,成功的话会显示cuda-10.0版本,如下图:
在这里插入图片描述
接下来通过运行刚下载的CUDA_Sample,来测试CUDA是否能正常运行,在命令行依次输入以下三句命令(如果Sample安装到了其他位置需要调整路径,或者直接把第一句换成手动在目标文件夹下打开终端):

cd ~/NVIDIA_CUDA-10.0_Samples/1_Utilities/deviceQuery
sudo make
./deviceQuery

输出的最后部分如下所示:
在这里插入图片描述
若最后一行显示 “Result = PASS” 就表示CUDA安装成功了,另外上面一行也可以看到我的 “CUDA Driver Version = 10.2, CUDA Runtime Version = 10.0” ,表示显卡驱动的CUDA版本是10.2,运行版本是10.0,没毛病~

4. 安装cudNN

从这开始的安装就比较容易了,首先去nvidia官网https://developer.nvidia.com/rdp/cudnn-archive下载CUDA10.0版本对应的cudNN,直接选 cuDNN Library for Linux 那个就可以。
在这里插入图片描述
下载下来后,在下载目录下依次执行命令:

# 解压下载的cudnn压缩包,注意文件名
tar -xzvf cudnn-10.0-linux-x64-v7.6.5.32.tgz
# 将解压的文件别拷贝到刚才安装的cuda之下
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
# 修改文件权限
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

至此,cuDNN的配置就完成了,刚解压的文件夹可以删掉。
(另外,也可以通过下载刚才页面的三个(Deb)文件进行安装,优点是安装完后可以执行Sample来测试是否安装正确)

5. 安装Anaconda

去到Anaconda官网 https://www.anaconda.com/products/individual 下载免费的个人版本,然后在安装目录下用命令sudo sh Anaconda3…(.sh文件名)进行安装中间都同意就好了,安装完毕后输入命令source ~/.bashrc更新环境变量,就可以发现来到了conda的base环境下。
在这里插入图片描述
【conda常用命令】

conda --version #查看conda版本,验证是否安装
conda update conda #更新conda到最新版本,也会更新其它相关包
conda update --all #更新所有包
conda update package_name #更新指定的包
conda create -n env_name package_name(s) #创建名为env_name的新环境,并在该环境下安装名为package_name的包,package_name可以写多个,用空格隔开
conda activate env_name #切换至env_name环境
conda deactivate #退出环境
conda info -e #显示所有已经创建的环境
conda remove --name env_name –all #删除环境
conda install package_name #在当前环境中安装某个包(也可以用pip install package_name)
conda remove package_name #删除当前环境中的某个包
conda install --name env_name package_name #在指定环境中安装某个包
conda remove --name env_name package_name #删除指定环境中的某个包

根据这些命令后面就可以安装tensorflow-gpu啦~

6. 配置tensorflow-gpu环境

在conda内创建多个环境,用来分别放tf1.15和tf2的版本(以后安装pytorch也可以生成一个pytorch的环境)
以tf1.15为例:

# 创建环境"tf1.15"的同时安装python3和tf1.15(别忘了-gpu)
conda create -n tf1.15 python=3.7 tensorflow-gpu==1.15
# 进入tf1.15环境
source activate tf1.15
# 进入python验证是否安装成功
python
import tensorflow as tf
tf.__version__   #查看tf版本
tf.test.is_built_with_cuda()  #返回true表示获取到cuda
tf.test.is_gpu_available()  #返回true表示获取到gpu
exit()

至此,Ubuntu18.04下的tensorflow-gpu-1.15 / 2.0 就安装好啦~
但是!如果你想再安装一个Pycharm,一切就没有么简单了!且往下看

7. Pycharm配置

Pycharm的安装我就不多说了,现在community版本已经免费使用不需要激活了。
要记住一点就是,记得创建运行脚本这里要钩上,以后想运行直接从命令行输入pycharm即可
在这里插入图片描述
创建工程后,点击进入File->Setting->Project: (project_name)->Python Interpreter中,Add窗口,选择Conda Environment下的Existing environment的相应环境即可。
在这里插入图片描述
奉上我的测试代码:

import tensorflow as tf

def test(x, y):
    a = tf.placeholder(dtype=tf.int8, shape=None)
    b = tf.placeholder(dtype=tf.int8, shape=None)
    c = tf.add(a, b)
    with tf.Session() as sess:
        print(sess.run(c, feed_dict={a: x, b: y}))
        print(tf.test.is_built_with_cuda(), tf.test.is_gpu_available())

if __name__ == '__main__':
    test(1, 1)

执行结果如下,证明pycharm也配置成功啦~ 收工~
在这里插入图片描述

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是安装步骤: 1. 安装CUDA 8.0 首先,你需要下载CUDA 8.0安装包,可以在官网上下载或者使用以下命令: ``` wget https://developer.nvidia.com/compute/cuda/8.0/Prod2/local_installers/cuda_8.0.61_375.26_linux-run ``` 下载完成后,运行以下命令进行安装: ``` sudo sh cuda_8.0.61_375.26_linux-run ``` 安装过程中需要你进行一些选择,可以按照默认选项进行。 安装完成后,在`~/.bashrc`文件中添加以下环境变量: ``` export PATH=/usr/local/cuda-8.0/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH ``` 然后运行以下命令使配置生效: ``` source ~/.bashrc ``` 2. 安装cuDNN cuDNN是NVIDIA提供的深度学习库,可以加速深度学习的训练和推理过程。你需要先在官网上注册一个账号,然后才能下载cuDNN。 下载完成后,解压文件并将文件复制到CUDA安装路径下: ``` tar -xzvf cudnn-8.0-linux-x64-v6.0.tgz sudo cp -P cuda/include/cudnn.h /usr/local/cuda-8.0/include sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda-8.0/lib64/ sudo chmod a+r /usr/local/cuda-8.0/include/cudnn.h /usr/local/cuda-8.0/lib64/libcudnn* ``` 3. 安装TensorFlow 最后,你可以使用pip安装TensorFlow: ``` pip install tensorflow-gpu==1.3 ``` 如果你想使用CPU版本的TensorFlow,可以使用以下命令: ``` pip install tensorflow==1.3 ``` 安装完成后,你可以测试一下TensorFlow是否正常工作: ``` python import tensorflow as tf hello = tf.constant('Hello, TensorFlow!') sess = tf.Session() print(sess.run(hello)) ``` 如果输出了`Hello, TensorFlow!`,那么TensorFlow就安装成功了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值