From a42dc635bc3d4a3fa1394d4131216dd1a6c4e483 Mon Sep 17 00:00:00 2001 From: Aganlengzi Date: Wed, 10 Aug 2022 23:24:17 +0800 Subject: [PATCH 1/2] tipc for npu --- test_tipc/prepare_npu_test.sh | 25 ++++++++++++++++++++++++ test_tipc/test_train_inference_python.sh | 6 +++--- tools/predict.py | 4 ++++ 3 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 test_tipc/prepare_npu_test.sh diff --git a/test_tipc/prepare_npu_test.sh b/test_tipc/prepare_npu_test.sh new file mode 100644 index 000000000..a944f3ced --- /dev/null +++ b/test_tipc/prepare_npu_test.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +BASEDIR=$(dirname "$0") + +function readlinkf() { + perl -MCwd -e 'print Cwd::abs_path shift' "$1"; +} + +REPO_ROOT_PATH=$(readlinkf ${BASEDIR}/../) + +config_files=$(find ${REPO_ROOT_PATH}/test_tipc/configs -name "train_infer_python.txt") +for file in ${config_files}; do + echo $file + sed -i '16s/$/ -o use_npu=True/' $file + sed -i '24s/$/ -o use_npu=True/' $file + sed -i '40s/$/ --use_npu=True/' $file + sed -i "s/--use_gpu:True|False/--use_gpu:False/g" $file +done + +yaml_files=$(find ${REPO_ROOT_PATH}/configs/recognition/ -name "*.yaml") +for file in ${yaml_files}; do + echo $file + sed -i "s/num_workers: 4/num_workers: 0/g" $file + sed -i "s/num_workers: 8/num_workers: 0/g" $file +done diff --git a/test_tipc/test_train_inference_python.sh b/test_tipc/test_train_inference_python.sh index da6131c3e..9e6f4c323 100644 --- a/test_tipc/test_train_inference_python.sh +++ b/test_tipc/test_train_inference_python.sh @@ -240,7 +240,7 @@ if [ ${MODE} = "whole_infer" ] || [ ${MODE} = "klquant_whole_infer" ]; then echo $export_cmd status_export=$? status_check $status_export "${export_cmd}" "${status_log}" "${model_name}" - + else save_infer_dir=${infer_model} fi @@ -361,9 +361,9 @@ else if [ ${#gpu} -le 2 ];then # train with cpu or single gpu cmd="${python} ${run_train} ${set_amp_config} ${set_use_gpu} ${set_save_model} ${set_epoch} ${set_pretrain} ${set_batchsize} ${set_train_params1} ${set_train_params2} " elif [ ${#ips} -le 15 ];then # train with multi-gpu - cmd="${python} -B -m paddle.distributed.launch --gpus=\"${gpu}\" ${run_train} ${set_amp_config} ${set_use_gpu} ${set_save_model} ${set_epoch} ${set_pretrain} ${set_batchsize} ${set_train_params1} ${set_train_params2} " + cmd="${python} -B -m paddle.distributed.launch --devices=\"${gpu}\" ${run_train} ${set_amp_config} ${set_use_gpu} ${set_save_model} ${set_epoch} ${set_pretrain} ${set_batchsize} ${set_train_params1} ${set_train_params2} " else # train with multi-machine - cmd="${python} -B -m paddle.distributed.launch --ips=${ips} --gpus=\"${gpu}\" ${run_train} ${set_amp_config} ${set_use_gpu} ${set_save_model} ${set_pretrain} ${set_epoch} ${set_batchsize} ${set_train_params1} ${set_train_params2} " + cmd="${python} -B -m paddle.distributed.launch --ips=${ips} --devices=\"${gpu}\" ${run_train} ${set_amp_config} ${set_use_gpu} ${set_save_model} ${set_pretrain} ${set_epoch} ${set_batchsize} ${set_train_params1} ${set_train_params2} " fi # run train diff --git a/tools/predict.py b/tools/predict.py index 57a27cf42..bdf29e9f7 100644 --- a/tools/predict.py +++ b/tools/predict.py @@ -24,6 +24,7 @@ def parse_args(): + def str2bool(v): return v.lower() in ("true", "t", "1") @@ -50,6 +51,7 @@ def str2bool(v): # params for paddle predict parser.add_argument("-b", "--batch_size", type=int, default=1) parser.add_argument("--use_gpu", type=str2bool, default=True) + parser.add_argument("--use_npu", type=str2bool, default=False) parser.add_argument("--precision", type=str, default="fp32") parser.add_argument("--ir_optim", type=str2bool, default=True) parser.add_argument("--use_tensorrt", type=str2bool, default=False) @@ -67,6 +69,8 @@ def create_paddle_predictor(args, cfg): config = Config(args.model_file, args.params_file) if args.use_gpu: config.enable_use_gpu(args.gpu_mem, 0) + elif args.use_npu: + config.enable_npu() else: config.disable_gpu() if args.cpu_threads: From 1e633d763317cc7fa2a27e5c9f3af48c60f0358d Mon Sep 17 00:00:00 2001 From: Aganlengzi Date: Thu, 11 Aug 2022 17:47:02 +0800 Subject: [PATCH 2/2] tipc for npu --- test_tipc/prepare_npu_test.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/test_tipc/prepare_npu_test.sh b/test_tipc/prepare_npu_test.sh index a944f3ced..ed050987f 100644 --- a/test_tipc/prepare_npu_test.sh +++ b/test_tipc/prepare_npu_test.sh @@ -11,10 +11,11 @@ REPO_ROOT_PATH=$(readlinkf ${BASEDIR}/../) config_files=$(find ${REPO_ROOT_PATH}/test_tipc/configs -name "train_infer_python.txt") for file in ${config_files}; do echo $file + sed -i "s/Global.use_gpu/Global.use_npu/g" $file sed -i '16s/$/ -o use_npu=True/' $file sed -i '24s/$/ -o use_npu=True/' $file - sed -i '40s/$/ --use_npu=True/' $file - sed -i "s/--use_gpu:True|False/--use_gpu:False/g" $file + sed -i '40s/$/ --use_gpu=False/' $file + sed -i "s/--use_gpu:True|False/--use_npu:True|False/g" $file done yaml_files=$(find ${REPO_ROOT_PATH}/configs/recognition/ -name "*.yaml")