一、引言
西电超算不错,我很喜欢。本文仅供自己学习使用。
二、环境搭建
搭建环境需要有一些依赖库,但是其实西电超算说明手册并没有写的非常清楚。因此,这次实战演示一下,写一个运行sh文件脚本并提交作业。
1、选择GPU还是CPU队列
GPU就是:
#!/bin/bash
#JSUB -q gpu
#JSUB -gpgpu "1 type=NVIDIAGeForceRTX3090"
#JSUB -app default
#JSUB -n 16
#JSUB -e error.%J
#JSUB -o output.%J
#JSUB -J cnn-cov1-cross-density-cat
CPU就是:
#!/bin/bash
#JSUB -q normal
#JSUB -app default
#JSUB -n 16
#JSUB -e error.%J
#JSUB -o output.%J
#JSUB -J create_data_mvp # 这是队列名字
2、 将modulefiles导入
只有导入modulefiles才能使用学校提供的第三方库:
export MODULEPATH=$MODULEPATH:/home/221*******(学号)/modulefiles
学校提供的第三方库有:
详见西电超算手册。
3、导入CUDA环境
export CUDA_HOME=/apps/software/cuda/11.1
export PATH=/apps/software/cuda/11.1/bin:$PATH
export LD_LIBRARY_PATH=/apps/software/cuda/11.1/lib64:$LD_LIBRARY_PATH
export CPATH=/apps/software/cuda/11.1/include/
export INCLUDE=/apps/software/cuda/11.1/include/
4、 导入conda并激活环境
source /apps/software/anaconda3/etc/profile.d/conda.sh
conda activate pcdet
5、读取需要的module
module load cuda/11.1
module load cudnn/8.0.5-cuda-11.1
module unload gcc
module load mpc/1.2.1
module load mpfr/4.1.0
module load gmp/6.2.1
module load gcc/7.5.0
export CXX=g++
module load tbb/2021.3.0
module load cmake/3.18.4
6、安装环境,运行脚本 and so on
cd /home/22171214690/Desktop/virconv/tools/
python train.py --cfg_file cfgs/models/kitti/cnn_cross_car.yaml --batch_size 2 --output_name cnn+cross-no-swap-car-epoch-50
7、提交作业
jsub < xxx.sh
进入到ssh或者linux界面窗口的终端中,使用jsub就可以提交作业了。
三、完整sh文件代码
#!/bin/bash
#JSUB -q gpu
#JSUB -gpgpu "1 type=NVIDIAGeForceRTX3090"
#JSUB -app default
#JSUB -n 16
#JSUB -e error.%J
#JSUB -o output.%J
#JSUB -J cnn-cov1-cross-density-cat
export MODULEPATH=$MODULEPATH:/home/221*******(学号)/modulefiles
export CUDA_HOME=/apps/software/cuda/11.1
export PATH=/apps/software/cuda/11.1/bin:$PATH
export LD_LIBRARY_PATH=/apps/software/cuda/11.1/lib64:$LD_LIBRARY_PATH
export CPATH=/apps/software/cuda/11.1/include/
export INCLUDE=/apps/software/cuda/11.1/include/
source /apps/software/anaconda3/etc/profile.d/conda.sh
conda activate pcdet
module load cuda/11.1
module load cudnn/8.0.5-cuda-11.1
module unload gcc
module load mpc/1.2.1
module load mpfr/4.1.0
module load gmp/6.2.1
module load gcc/7.5.0
export CXX=g++
module load tbb/2021.3.0
module load cmake/3.18.4
export TORCH_CUDA_ARCH_LIST="6.1;7.0;7.5;8.0+PTX"
cd /home/22171214690/Desktop/virconv/tools/
python train.py --cfg_file cfgs/models/kitti/cnn_cross_car.yaml --batch_size 2 --output_name cnn+cross-no-swap-car-epoch-50
# sh dist_train.sh --cfg_file cfgs/models/kitti/VirConv-S.yaml --batch_size 1