当前位置:   article > 正文

算力云AuToDL使用教程 (开机镜像环境配置)_autodl镜像选择

autodl镜像选择

一、开机镜像环境配置

平台所有镜像的系统版本为Ubuntu,多数为Ubuntu 18.04 ,少数Ubuntu 20.04。

平台已经内置了以下框架及版本的镜像,使用该镜像的实例就会自带相应框架软件。如果以下自带的框架版本或Python版本不满足需求,请继续看下方配置其他版本的框架或Python方法。

安装其他版本的Python

平台内置的镜像均为Python3.8,如果在需要使用Python3.6、Python3.7等的场景(比如TensorFlow1.14必须3.6/3.7),那么可以使用Miniconda创建其他版本的Python虚拟环境

  1. # 构建一个虚拟环境名为:my-env,Python版本为3.7
  2. conda create -n my-env python=3.7
  3. # 更新bashrc中的环境变量
  4. conda init bash && source /root/.bashrc
  5. # 切换到创建的虚拟环境:my-env
  6. conda activate my-env
  7. # 验证
  8. python

安装其他版本的CUDA

注意:如果没有二次编译代码的需求,正常情况下不需要单独安装CUDA/cuDNN,因为框架都内置了编译好的CUDA,框架版本和CUDA版本是对应的,只需要关注框架版本即可,无需独立关注CUDA版本。

查询默认CUDA/cuDNN版本

注意:通过nvidia-smi命令查看到的CUDA版本只是驱动支持的最高cuda版本参数,不代表实例中安装的是该版本CUDA。

终端中执行查看默认镜像自带的CUDA版本(安装目录为/usr/local/):

  1. # 查询平台内置镜像中的cuda版本
  2. ldconfig -p | grep cuda
  3. libnvrtc.so.11.0 (libc6,x86-64) => /usr/local/cuda-11.0/targets/x86_64-linux/lib/libnvrtc.so.11.0
  4. libnvrtc.so (libc6,x86-64) => /usr/local/cuda-11.0/targets/x86_64-linux/lib/libnvrtc.so
  5. libnvrtc-builtins.so.11.0 (libc6,x86-64) => /usr/local/cuda-11.0/targets/x86_64-linux/lib/libnvrtc-builtins.so.11.0
  6. # 查询平台内置镜像中的cudnn版本
  7. ldconfig -p | grep cudnn
  8. libcudnn_ops_train.so.8 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libcudnn_ops_train.so.8
  9. libcudnn_ops_train.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libcudnn_ops_train.so
  10. libcudnn_ops_infer.so.8 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libcudnn_ops_infer.so.8
  11. libcudnn_ops_infer.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libcudnn_ops_infer.so

上边的输出日志.so后的数字即为版本号。如果你通过conda安装了cuda那么可以通过以下命令查看:

  1. conda list | grep cudatoolkit
  2. cudatoolkit 10.1.243 h6bb024c_0 defaults
  3. conda list | grep cudnn
  4. cudnn 7.6.5 cuda10.1_0 defaults

安装其他版本的CUDA/cuDNN

方法一:使用conda进行安装
  1. conda install cudatoolkit==xx.xx
  2. conda install cudnn==xx.xx

如果你不知道版本号是什么那么可以搜索:

  1. conda search cudatoolkit
  2. Loading channels: done
  3. # Name Version Build Channel
  4. cudatoolkit 9.0 h13b8566_0 anaconda/pkgs/main
  5. cudatoolkit 9.2 0 anaconda/pkgs/main
  6. cudatoolkit 10.0.130 0 anaconda/pkgs/main
  7. cudatoolkit 10.1.168 0 anaconda/pkgs/main
  8. cudatoolkit 10.1.243 h6bb024c_0 anaconda/pkgs/main
  9. cudatoolkit 10.2.89 hfd86e86_0 anaconda/pkgs/main
  10. cudatoolkit 10.2.89 hfd86e86_1 anaconda/pkgs/main
  11. cudatoolkit 11.0.221 h6bb024c_0 anaconda/pkgs/main
  12. cudatoolkit 11.3.1 h2bc3f7f_2 anaconda/pkgs/main
方法二:下载安装包安装

CUDA载地址:https://developer.nvidia.com/cuda-toolkit-archive

安装方法:

  1. # 下载.run格式的安装包后:
  2. chmod +x xxx.run # 增加执行权限
  3. ./xxx.run # 运行安装包

cuDNN下载地址:https://developer.nvidia.com/cudnn

安装方法:

先解压, 后将动态链接库和头文件放入相应目录

  1. mv cuda/include/* /usr/local/cuda/include/
  2. chmod +x cuda/lib64/* && mv cuda/lib64/* /usr/local/cuda/lib64/

安装完成以后,增加环境变量:

  1. echo "export LD_LIBRARY_PATH=/usr/local/cuda/lib64/:${LD_LIBRARY_PATH} \n" >> ~/.bashrc
  2. source ~/.bashrc && ldconfig

提示:

默认镜像都内置了最原生的CUDA和cuDNN,如果您自己安装了cudatoolkits等,那么一般会默认优先使用conda中安装的cudatoolkits

安装PyTorch: 

参考官方安装步骤

Previous PyTorch Versions | PyTorch

 安装TensorFlow

参考官方安装步骤(需要科学上网)

www.tensorflow.org

二、开机创建Miniconda环境,自行构建框架

平台内置的所有镜像都安装了Miniconda,安装路径为/root/miniconda3/。

如果您需要使用其他版本的CUDA或cuDNN,那么可以通过Miniconda简单几步完成环境构建,推荐您租用实例时选择miniconda镜像(内部未安装任何深度学习框架,保持运行环境干净,避免不必要的问题)

以下以构建TensorFlow 1.15.0版本的运行环境为例进行说明如何使用Conda构建需要的环境。

创建虚拟环境

  1. conda create -n tf python=3.7 # 构建一个虚拟环境,名为:tf
  2. conda init bash && source /root/.bashrc # 更新bashrc中的环境变量
  3. conda activate tf # 切换到创建的虚拟环境:tf

安装软件依赖

  1. # 切换conda虚拟环境后
  2. conda install tensorflow-gpu==1.15.0 # conda会自动解析依赖安装tensorflow 1.15.0版本需要的cuda和cudnn,无需自己独立安装
  3. # 安装完使用Python进行简单的测试:
  4. import tensorflow as tf
  5. hello = tf.constant('Hello, TensorFlow!')
  6. sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
  7. print(sess.run(hello))

Notebook环境切换

如何在JupyterLab的Notebook中使用新的Conda环境

  1. # 创建Conda新的虚拟环境(如已创建,请忽略!)
  2. conda create -n tf python=3.7 # 构建一个虚拟环境,名为:tf
  3. conda init bash && source /root/.bashrc # 更新bashrc中的环境变量
  4. # 将新的Conda虚拟环境加入jupyterlab中
  5. conda activate tf # 切换到创建的虚拟环境:tf
  6. conda install ipykernel
  7. ipython kernel install --user --name=tf # 设置kernel,--user表示当前用户,tf为虚拟环境名称

执行以上命令后,如果创建新的Notebook,那么可以选择名为tf的Notebook。

如果是已有的Notebook

清除Conda虚拟环境

  1. # 清除安装的环境
  2. conda deactivate # 退出当前(tf)环境到base环境
  3. conda remove -n tf --all # 清除tf环境

删除安装包和缓存

conda clean -y --all

安装虚拟环境到数据盘(如需要可以安装虚拟环境到数据盘)

执行以下命令设置将虚拟环境安装到/root/autodl-tmp/conda/envs, 包缓存到/root/autodl-tmp/conda/pkgs

  1. mkdir -p /root/autodl-tmp/conda/pkgs
  2. conda config --add pkgs_dirs /root/autodl-tmp/conda/pkgs
  3. mkdir -p /root/autodl-tmp/conda/envs
  4. conda config --add envs_dirs /root/autodl-tmp/conda/envs

验证是否生效

  1. # 执行命令查看配置的路径是否在文件内容中
  2. cat /root/.condarc

 取消设置安装虚拟环境到数据盘
编辑/root/.condarc文件,删除对应的路径所在行即可

推荐的使用方式

        首先平台镜像中有没有您需要的Torch、TensorFlow等框架的相应版本,如果有首选平台内置的镜像。

        如果平台中没有合适的Torch、TensorFlow等框架版本,那么查询自己的框架需要什么CUDA版本,比如PyTorch=1.9.0需要CUDA=11.1,那么可以选择Miniconda/CUDA=11.1的平台镜像,然后在镜像内安装自己需要的框架,免去安装cudatoolkit的麻烦。(平台内置的CUDA均带.h头文件,如有二次编译代码的需求更方便)。

        如果以上条件都不满足,则可随便挑选一个Miniconda镜像,在开机后自行安装相关框架、CUDA、甚至其他版本的Python。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/177324
推荐阅读
  

闽ICP备14008679号