大一生关于deepin15.9安装pycharm配置Tensorflow-GPU+anaconda中不完全趟坑之路
引言
deepin15.9发布已经有一段时间,对于linux对程序员的重要性自然不言而喻,自己作为一名大一生,想要学习一下机器学习,自然少不了接触Tensorflow这个机器学习架构,anaconda做为目前应用最广泛的Python环境管理平台自然不可或缺,Tensorflow-CPU版的计算速度与GPU版自然不能相提并论然后“Linux+Tensorflow+anaconda3+第一次尝试”,自然少不了受苦的过程。
1.关于deepin15.9的安装
这方面直接上官网查找,百度搜索,安装只需要一个空的U盘,从官网下载 镜像与制作工具,基本属于傻瓜操作,插入U盘开机猛按F12,当然有可能不同机子有不同的按键自行查找吧,安装界面也属于傻瓜式,在这里分配磁盘时,如果你是直接分一块硬盘的话直接简单安装就好,但是默认分配的话空间可能不如你愿,况且我是固态加上机械的做法,所以我采用高级安装。分配磁盘时,一般记得给** ./ ,home,usr,分区一定要分的大一点,swap分区的话在内存较大的情况下可以少分一些。
在Windows操作系统中,是先将物理地址分开,再在分区上建立目录.在Windows操作系统中,所有路径都是从盘符开始,如C://program file**。
Linux正好相反,是先有目录,再将物理地址映射到目录中。在Linux操作系统中,所有路径都是从根目录开始。Linux默认可分为3个分区,分别是boot分区、swap分区和根分区。
无论是Windows操作系统,还是Linux操作系统,每个分区均可以有不同的文件系统,如FAT32、NTFS、Yaffs2等。
(1)boot分区
该分区对应于/boot目录,约100MB.该分区存放Linux的Grub(bootloader)和内核源码。用户可通过访问/boot目录来访问该分区.换句话说,用户对/boot目录的操作就是操作该分区。
(2)swap分区
该分区没有对应的目录,故用户无法访问。
Linux下的swap分区即为虚拟内存.虚拟内存用于当系统内存空间不足时,先将临时数据存放在swap分区,等待一段时间后,然后再将数据调入到内存中执行.所以说,虚拟内存只是暂时存放数据,在该空间内并没有执行。
Ps:虚拟内存
虚拟内存是指将硬盘上某个区域模拟为内存.因此虚拟内存的实际物理地址仍然在硬盘上.虚拟内存,或者说swap分区只能由系统访问,其大小为物理内存的2倍。
(3)根分区
在Linux操作系统中,除/boot目录外的其它所有目录都对应于该分区.因此,用户可通过访问除/boot目录外的其它所有目录来访问该分区。
以下是我的分区方式:
挂载点 | 磁盘类型 | 分区方式 | 位置 | 大小 | 备注 |
---|---|---|---|---|---|
.boot | 固态硬盘 | 主分区 | 起始点 | 800MB | 该处是用来加载系统的启动 |
./ | 固态硬盘 | 主分区 | 起始点 | 36G | 该处是用来存储系统文件以及一些路径同时未分配的内容也会在该分区内进行分配 |
.usr | 机械硬盘 | 主分区 | 起始点 | 38G | 该处用来存储你安装的软件之类的,具体作用百度 |
.home | 机械硬盘 | 主分区 | 起始点 | 59G | 该处是用来存储用户文件 |
.swap | 机械硬盘 | 主分区 | 起始点 | 4G | 该处是用来作为交换空间来使用 |
接下来安装完成后就开始下一步工作。
2.安装驱动
驱动的话我先讲述下网上的教程方法,从NVIDIA官网中下载显卡对应的驱动,之后切换到驱动所在目录使用sudo安装,其中安装完毕后会自动禁用默认开源驱动,所以之后重启即可,另外使用大黄蜂方式也可以,网上教程很多不再赘述。
sudo apt-get update
sudo apt-get install nvidia-smi
安装完成后直接输入nvidia-smi,会出现以下界面
如果出现了以下界面则证明你成功了一大半。
在我安装时,我是直接在系统自带的驱动管理器中安装的,之后再安装一个nvidia-smi就好了。
3.安装cuda
关于安装cuda 网上有的是这样安装的
sudo apt install nvidia-cuda-dev nvidia-cuda-toolkit nvidia-nsight nvidia-visual-profiler
然而在之后的配置是很麻烦的,所以我是在最后放弃了这种方法,而是采用了另一种方法即直接采用安装cuda安装包。首先在cuda官网下载cuda9.0,这是目前tensorflow支持的主流cuda版本,同时百度cudnn,在官网下载对应的cudnn加速库注意这个需要你注册账号。下载完成后切换到目录中,安装cuda,安装cuda9
安装前先保证gcc和g++版本对应cuda,官方文档要求gcc/g++ 5.x,
先对gcc/g++降级
sudo apt-get install gcc-5
sudo apt-get install g++-5
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 100
注意在安装时除了driver驱动以外其余都安装即可
sudo cuda_9.0.176_384.81_linux.run
安装完成后进入home/xxxx/中,使用Ctrl+h来显示隐藏文件,之后进入.bashrc中在文件末尾添加如下内容
#cuda
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64/:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-9.0/bin:$PATH
之后终端中输入
source ~/.bashrc
验证安装,重新打开一个终端
cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
有pass即成功
4.安装cudnn
将下载的文件解压,之后将文件按照目录分别放入对应的文件夹中,注意使用root,之后同样在.bashrc中添加环境变量
#cudnn
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64"
export CUDA_HOME=/usr/local/cuda
之后终端中输入
source ~/.bashrc
5.安装pycharm
进入jetbrain官网,选择pycharm,选择下载社区版本,下载压缩文件,下载完成后进入下载目录,将其拷贝至opt文件夹中,然后在该处右击进入终端,
输入
bash pycharm.sh
之后就是正常安装pycharm的流程了,在进入pycharm后,可以在菜单中的tool中找到create desktop entry,然后就可以创建快捷方式了。
6.安装anaconda
安装anaconda同样很简单,进入官网下载最新版本的.sh文件,然后进入下载目录,打开终端输入
bash xxxxx.sh
按q跳过须知,进行安装,注意安装的位置我们要选在home/xxxx/anaconda中,这样可以方便之后我们进行Python环境的导入,然后在安装完成后,另外打开一个终端,分别输入
conda create -n tensorflow python=3.6
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
conda install tensorflow-gpu
之后会弹出一大串信息,注意tensorflow的版本,应该是1.12.0或者更高,并且自己绝对没有带着cuda,然后如果没有错误的话就直接输入y安装。
安装完成后直接输入
source activate tensorflow
python
import tensorflow as tf
如果没有输出错误代表安装完成。
7.pycharm中Python库的导入
在导入之前我们必须首先检查/usr/local/cuda-9.0/lib64中是否含有libcublas.so.9.0,如果有的话终端中输入
sudo ldconfig /usr/local/cuda-9.0/lib64
然后打开pycharm
在左上角的file中选择settings,进入后在project interpreter中,
在右上角的齿轮中选择add,在以下界面中的existing enviorment中选择正确的路径进行导入
最后apply,完成。
之后可以创建一个py文件,在其中输入import tensorflow as tf,保存在pycharm中运行一下,如果没有报错就成功了。
其余的需要的库还有很多在这里就不赘述了。
如果你想安装pytorch
pytorch的话,安装比tensorflow简单的多,在安装完cuda的基础上进入官网
pip install torch torchvision
安装完成后终端激活环境
输入
python
import torch
无报错即可,推荐新创建一个Python3.7的环境,这样支持更好。同时安装采用pip安装方式比conda方式快不少,别问我怎么知道,科学上网的杠精当我没说,记得分享下方法。