华为云Linux部署深度学习项目

踩了几乎能踩的所有坑,真是要命。
直接从1 购买云服务器开始看即可

一些可能用到的命令

  1. nvidia-smi:查看cuda driver的版本

  2. 看整个系统当前cuda的版本

    • nvcc --version:说没有找到nvcc命令也不要着急下载nvcc,可以先用3.找找看
    • cat /usr/local/cuda/version.txt
  3. ls /usr/local/cuda*:找找有没有下载过cuda,找到之后手动写到.bashrc文件里

  4. python -c "import torch;print(torch.version.cuda)"

  5. 一些虚拟环境下的命令

    import torch
    print(torch.__version__)# 当前环境下pytorch的版本
    print(torch.cuda.is_available())# 当前环境下pytorch和cuda版本是否匹  配:true
    print(torch.version.cuda)# 当前环境下的cuda版本
    print(torch.backends.cudnn.version())# 当前环境下的cudnn版本
    
    import tensorflow as tf  
    print(tf.test.is_built_with_cuda())  # 当前环境下tensorfolw和cuda版本是否匹配:true
    print(tf.test.is_gpu_available(cuda_only=False,min_cuda_compute_capab   ility=None)) # gpu是否可以被tf调用:true
    
  6. cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2:查看系统cudnn版本

  7. conda list cuda conda list cudnn:conda list +名字,查看当前虚拟环境下的版本

  8. 修改配置文件,重读配置文件

    vim ~/.bashrc
    source ~/.bashrc
    
    
    

1 购买云服务器

很多开源项目只能用比较低版本的cuda等。
注意30系列的显卡只能支持cuda11以上
有些服务器已经含有镜像,包含操作系统(注意一下cuda和操作系统的版本)
如果不包含镜像,记得自己安装cuda,注意一下cuda的版本,很多程序不支持版本高的。
本人用的ubuntu 16.04+cuda9.0+anaconda3(cudnn7.1.2+tensorflow1.8.0+pytorch1.0.0)

2 非虚拟环境安装cuda cudnn(虚拟环境请看4)

首先使用nvidia-smi查看gpu信息,看看你的driver version
对照图片找到合适的版本
在这里插入图片描述

此处以9.0版本为例,使用软链接。如果你需要安装多个版本的cuda、cudnn,使用软链接即可。

2.1 cuda

英伟达官网下载run版本的cuda,注意版本对应。
wget 链接命令下载。(在官网下载包处右键点击复制链接,即可复制链接。)
如9.0run版本的 wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run

然后chmod +x cuda_9.0.176_384.81_linux-run,上述代码的目的是赋予权限。

然后再执行:sudo sh cuda_9.0.176_384.81_linux-run

开始安装,注意安装时不选中显卡驱动(此处安装可能会出现编译错误)。

安装完毕后,在vim ~/.bashrc添加环境变量,意思是cuda的路径在哪(按 i 插入,esc退出编辑, :wq保存并退出文件)

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

然后重启teminal,或者source ~/.bashrc
然后

# 意思是将cuda9.0链接到cuda路径上,之后也可以链接到其他版本)
sudo rm -rf /usr/local/cuda #删除之前创建的软链接
sudo ln -s /usr/local/cuda-9.0 /usr/local/cuda #创建新 cuda 的软链接

并输入nvcc -V测试是否安装成功。(也可以用cat /usr/local/cuda/version.txt)
(9.0版本需要把patch包也下载了,使用sudo sh patch包名安装)

2.2 cudnn(需要你登录nvidia的账号

英伟达官网
wget 链接.tgz
(library:全的包.tgz,runtime:只用于运行、不可开发的包.deb,developer:全的?.deb)

下载后进行解压:tar -zxvf cudnn-9.0-linux-x64-v7.4.2.24.tgz(如果提示说这不是个gzip格式的包,用file 文件名看一下文件格式,大概率是各html文件,这说明你下载错了。)

然后执行如下代码:将cudnn的lib64和include文件复制到cuda的目录,

cp cuda/lib64/* /usr/local/cuda-9.0/lib64/
cp cuda/include/* /usr/local/cuda-9.0/include/
sudo chmod a+r /usr/local/cuda-9.0/include/cudnn.h /usr/local/cuda-9.0/lib64/libcudnn*

查看cudnn的版本命令如下:cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
在conda list里看的cudnn版本是你的虚拟环境里的,上面这个查出来的是公共的)
(更换cudnn:

  1. 卸载旧版本的cuDNN:
     sudo rm -rf  /usr/local/cuda/include/cudnn.h
     sudo rm -rf  /usr/local/cuda/lib64/libcudnn*
    
  2. 按照正常步骤安装cuDNN

3 下载xshell,连接远程服务器

在xshell中进行环境配置操作

4 虚拟环境配置

4.1 下载anaconda(此处选择2021.05版本)

  • wget https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh
    下载安装包

  • bash ~/Downloads/Anaconda3-2021.05-Linux-x86_64.sh
    此处需要改成你自己的下载路径,比如我的是bash ~/Anaconda3-2021.05-Linux-x86_64.sh

  • 一直yes(除了问是否安装vscode输入no,其他都输入yes)

  • 添加anaconda环境变量(有时它会自动添加好,打开bashrc文件后,看看里面有没有,一般在末尾)
    编辑.bashrc文件

    此时不必手动添加在这里插入图片描述

    如果没有上图内容,先按下“i”键切换到插入模式。按下i后,左下角会有“INSERT”显示,表示我们现在敲打键盘即可插入文字。
    在这里插入图片描述
    在开头输入如下内容:

     #Anaconda
    export PATH=/home/用户名/anaconda3/bin:$PATH`
    

    其中用户名部分换成你的,如我的是 root
    如下图效果:(你的文件内容不一定和我的一样)在这里插入图片描述
    按下esc退出编辑模式,输入 :wq保存并退出
    在这里插入图片描述
    输入source ~/.bashrc 重新激活一下。

首先sudo -s

  • 此时输入which python即可发现当前使用的python是anaconda3中的。(/root/anaconda3/bin/python)
    在这里插入图片描述

4.2 下载传输文件的工具

apt-get install -y lrzsz,安装一个便于我们文件传输的工具。
命令行输入rz,会弹出一个窗口,找到我们之前下载的文件,选择“打开”。

4.3 修改镜像源

可以自己加一些清华、中科院、豆瓣的镜像源,下载包的时候会快很多!
如添加清华源

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 config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/

# 显示来源
conda config --set show_channel_urls yes

# 展示已有镜像
conda config --show channels

4.4 使用anaconda配置所需环境即可

  • 下载时一定要先创建、激活环境

  • conda create -n XXX(环境名) python=3.6 anaconda 创建一个python3.6环境
    conda activate 环境名激活该环境,可以看到base变为你的环境名

    下载可以用conda、也可用pip命令

  • 如果下载pytorch:注意conda命令下载的pytorch自带cuda和cudnn,删除掉命令中的部分后也可以只下载pytorch
    可以查一下这个表(pytorch、tensorflow、cuda版本对应)

  • 在不同虚拟环境中可安装不同版本的cuda、cudnn等,可以认为一个环境是一台主机环境。
    安装cuda(不需要配置环境变量)
    conda install cudatoolkit=9.0 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64/
    (cudatoolkit=版本号)
    安装cudnn
    conda install cudnn=7.0.5 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64/
    查看版本号

     conda list cudnn
     conda list cuda
     conda list tensorflow

如果上述conda的清华源URL失效,可尝试换成

https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

5 下载pycharm pro,以用来编辑代码

然后就可以愉快的,运行项目了,无论是直接xshell命令行运行还是pycharm里用服务器的python interpreter,都可以实现啦。
文件传输,也可以直接拖拽上传和下载,不需要rz了。

6 拉取github的项目

有时候会很慢,还会失败,所以可以参考下面这个方法,会快不少。
利用gitee拉去github上的项目

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值