集群搭建虚拟环境及其相关包的安装方法
AI生态包路径:https://cancon.hpccube.com:65024/4/main/
集群whl包的放置位置:/public/software/apps/DeepLearning/whl
每年4月、10月dtk会推出新版本及相关依赖,优化算子,修复bug,并以dtk-年月命名,例如dtk-2304、dtk-2310,可以根据需要选择驱动及环境
一、安装conda工具
直接在eshell命令行执行
bash /public/software/apps/DeepLearning/whl/conda/Miniconda3-latest-Linux-x86_64.sh #根据提示安装即可
source ~/.bashrc #激活安装的conda环境
conda -V #查看conda版本,显示版本号则安装成功
二、环境搭建
1、创建虚拟环境并进行环境搭建(以下为环境搭建示例,请根据需要自行修改):
conda create -n torch1.13-dtk23.10-py310 python=3.10 -y #创建虚拟环境,torch1.13-dtk23.10-py310表示虚拟环境名,可以自定义;-y 表示yes,无需安装时重复手动输入
conda activate torch1.13-dtk23.10-py310 #激活自己创建的虚拟环境
cd /public/software/apps/DeepLearning/whl/dtk-23.10/pytorch/py310 #切换到需要包的路径
pip install torch-1.13.1+git7d2dd01.abi0.dtk2310-cp310-cp310-manylinux2014_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple #安装需要的torch版本,-i后面是清华镜像源,可以加快安装
pip install torchvision-0.14.1+gitf78f29f.abi0.dtk2310.torch1.13-cp310-cp310-manylinux2014_x86_64.whl #一般对应的torchvision也需要安装下
注意安装torch时对应的python版本一定要和创建环境时的python版本一致!!! (注:也可以直接pip install /public/software/apps/DeepLearning/whl/dtk-23.10/pytorch/py310/* 进行安装, 其他包一般直接pip install xxx 安装即可。)
三、验证环境是否安装成功
1、 交互式验证方式:
#申请资源
salloc -p kshdtest -N1 -n 32 --gres=dcu:4 #kshdtest表示队列,可以根据whichpartition查看到自己的队列名,带有hd标志的表示dcu队列
ssh 计算节点 #可以通过squeue查看,NODELIST下面对应的是计算节点
conda activate torch1.13-dtk23.10-py310 #重新激活虚拟环境
#环境加载
module purge #清除默认环境
module load compiler/devtoolset/7.3.1 mpi/hpcx/2.11.0/gcc-7.3.1 #加载基础的环境
module load compiler/dtk/23.10 #加载对应安装torch的dtk模块
#验证
python
import torch
torch.cuda.is_available() #显示true表示torch的加速版本安装成功
简单算例验证方法: 拷贝公用目录下面的项目到自己的目录
cp -r /public/software/apps/DeepLearning/Benchmark/PyTorch/mnist ./
cd mnist
python -u main.py #此处默认已经进入虚拟环境和并加载需要的模块
注:交互式验证完记得取消作业,scancel 作业号(squeue查出的JOBID下面对应的为作业号)
2、 脚本验证方法(推荐):
编写submit.sh 脚本,脚本内容如下:
#!/bin/bash
#SBATCH -J ceshi #-J后面表示作业名,可以自定义
#SBATCH -p kshdtest #whichpartition查看可用队列,带有hd标志的表示dcu队列
#SBATCH -N 1 # 表示节点数量
#SBATCH -n 32 #表示申请的核心数
#SBATCH --gres=dcu:4 #表示卡数,默认核卡比为8:1
#SBATCH -o %x.o%j #作业标准输出日志,可以自定义
#SBATCH -e %x.e%j #作业错误输出日志,可以自定义
source ~/miniconda3/etc/profile.d/conda.sh #激活conda命令
conda activate torch1.13-dtk23.10-py310 #激活自定义的虚拟环境
module purge #清除默认环境
module load compiler/devtoolset/7.3.1 mpi/hpcx/2.11.0/gcc-7.3.1 #加载基础的环境
module load compiler/dtk/23.10 #加载对应安装torch的dtk模块
python3 -u main.py #自己需要运行的程序,可以根据需要自行替换
提交作业: sbatch submit.sh
实时查看输出日志: tail -f ceshi.o48473594 #输出日志名对应脚本中自定义产生的
查看dcu显存使用情况方法:
(1)ssh 计算节点 #登录计算节点,squeue查看到的nodelist下面对应的内容
(2)watch -n 1 rocm-smi #每隔一秒刷新一次DCU状态,-n表示几秒刷新一次,如:-n 1 则表示1秒刷新一次;乌镇:watch -n 1 hy-smi