PaddleClas
PaddleClas copied to clipboard
[TIPC] add scripts for NPU and XPU, test=develop
为昇腾和昆仑测试添加 TIPC 代码
- test_tipc/test_train_inference_python.sh 中将 --gpus 换成 --devices,不影响 GPU 测试
- deploy/utils/predictor.py 修改代码支持接受 use_gpu / use_npu / use_xpu 输入,且 use_gpu 可以为空
- test_tipc/prepare_npu_test.sh 和 test_tipc/prepare_xpu_test.sh 分别修改 TIPC 运行在 NPU 和 XPU 下所需配置
正常 GPU 下运行测试命令如下:
# 设置运行卡号
export CUDA_VISIBLE_DEVICES=0,1
# 准备小数据集
bash test_tipc/prepare.sh \
test_tipc/config/ResNet/ResNet50_vd_train_infer_python.txt \
'lite_train_lite_infer'
# 运行单测模型
bash test_tipc/test_train_inference_python.sh \
test_tipc/configs/ResNet/ResNet50_vd_train_infer_python.txt \
'lite_train_lite_infer'
运行结果如下,测试通过,不影响 GPU 下的 TIPC 运行

昇腾下运行测试命令如下:
# 准备昇腾代码
bash test_tipc/prepare_npu_test.sh
# 准备小数据集
bash test_tipc/prepare.sh \
test_tipc/config/ResNet/ResNet50_vd_train_infer_python.txt \
'lite_train_lite_infer'
# 运行单测模型
bash test_tipc/test_train_inference_python.sh \
test_tipc/configs/ResNet/ResNet50_vd_train_infer_python.txt \
'lite_train_lite_infer'
运行结果为:

昆仑下运行测试命令如下:
# 准备昆仑代码
bash test_tipc/prepare_xpu_test.sh
# 准备小数据集
bash test_tipc/prepare.sh \
test_tipc/config/ResNet/ResNet50_vd_train_infer_python.txt \
'lite_train_lite_infer'
# 运行单测模型
bash test_tipc/test_train_inference_python.sh \
test_tipc/configs/ResNet/ResNet50_vd_train_infer_python.txt \
'lite_train_lite_infer'
运行结果如下:

昆仑环境下无法支持运行如下命令
python3.7 -m paddle.distributed.launch --devices=0,1 tools/train.py -c ppcls/configs/ImageNet/ResNet/ResNet50_vd.yaml -o Global.seed=1234 -o DataLoader.Train.sampler.shuffle=False -o DataLoader.Train.loader.num_workers=0 -o DataLoader.Train.loader.use_shared_memory=False -o Global.device=xpu -o Global.output_dir=./test_tipc/output/ResNet50_vd/lite_train_lite_infer/norm_train_gpus_0,1_autocast_null -o Global.epochs=2 -o DataLoader.Train.sampler.batch_size=8
Thanks for your contribution!
Close as duplicated with https://github.com/PaddlePaddle/PaddleClas/pull/2262