add env, add infer det imgs, add infer_gpu_id to params.txt
This commit is contained in:
parent
04fb6148e1
commit
1203276fbd
|
@ -14,8 +14,6 @@ function func_parser(){
|
||||||
IFS=$'\n'
|
IFS=$'\n'
|
||||||
# The training params
|
# The training params
|
||||||
train_model_list=$(func_parser "${lines[0]}")
|
train_model_list=$(func_parser "${lines[0]}")
|
||||||
gpu_list=$(func_parser "${lines[1]}")
|
|
||||||
auto_cast_list=$(func_parser "${lines[2]}")
|
|
||||||
slim_trainer_list=$(func_parser "${lines[3]}")
|
slim_trainer_list=$(func_parser "${lines[3]}")
|
||||||
python=$(func_parser "${lines[4]}")
|
python=$(func_parser "${lines[4]}")
|
||||||
# inference params
|
# inference params
|
||||||
|
@ -27,13 +25,15 @@ rec_batch_size_list=$(func_parser "${lines[9]}")
|
||||||
gpu_trt_list=$(func_parser "${lines[10]}")
|
gpu_trt_list=$(func_parser "${lines[10]}")
|
||||||
gpu_precision_list=$(func_parser "${lines[11]}")
|
gpu_precision_list=$(func_parser "${lines[11]}")
|
||||||
|
|
||||||
|
infer_gpu_id=$(func_parser "${lines[12]}")
|
||||||
|
log_path=$(func_parser "${lines[13]}")
|
||||||
|
|
||||||
|
|
||||||
function status_check(){
|
function status_check(){
|
||||||
last_status=$1 # the exit code
|
last_status=$1 # the exit code
|
||||||
run_model=$2
|
run_model=$2
|
||||||
run_command=$3
|
run_command=$3
|
||||||
save_log=$4
|
save_log=$4
|
||||||
echo ${case3}
|
|
||||||
if [ $last_status -eq 0 ]; then
|
if [ $last_status -eq 0 ]; then
|
||||||
echo -e "\033[33m $run_model successfully with command - ${run_command}! \033[0m" | tee -a ${save_log}
|
echo -e "\033[33m $run_model successfully with command - ${run_command}! \033[0m" | tee -a ${save_log}
|
||||||
else
|
else
|
||||||
|
@ -45,11 +45,13 @@ for train_model in ${train_model_list[*]}; do
|
||||||
if [ ${train_model} = "det" ];then
|
if [ ${train_model} = "det" ];then
|
||||||
model_name="det"
|
model_name="det"
|
||||||
yml_file="configs/det/det_mv3_db.yml"
|
yml_file="configs/det/det_mv3_db.yml"
|
||||||
img_dir=""
|
wget -nc -P ./inference https://paddleocr.bj.bcebos.com/dygraph_v2.0/test/ch_det_data_50.tar && tar xf ./inference/ch_det_data_50.tar
|
||||||
|
img_dir="./inference/ch_det_data_50/"
|
||||||
elif [ ${train_model} = "rec" ];then
|
elif [ ${train_model} = "rec" ];then
|
||||||
model_name="rec"
|
model_name="rec"
|
||||||
yml_file="configs/rec/rec_mv3_none_bilstm_ctc.yml"
|
yml_file="configs/rec/rec_mv3_none_bilstm_ctc.yml"
|
||||||
img_dir=""
|
wget -nc -P ./inference https://paddleocr.bj.bcebos.com/dygraph_v2.0/test/ch_rec_data_200.tar && tar xf ./inference/ch_rec_data_200.tar
|
||||||
|
img_dir="./inference/ch_rec_data_200/"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# eval
|
# eval
|
||||||
|
@ -126,6 +128,7 @@ for train_model in ${train_model_list[*]}; do
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
else
|
else
|
||||||
|
env="CUDA_VISIBLE_DEVICES=${infer_gpu_id}"
|
||||||
for use_trt in ${gpu_trt_list[*]}; do
|
for use_trt in ${gpu_trt_list[*]}; do
|
||||||
for precision in ${gpu_precision_list[*]}; do
|
for precision in ${gpu_precision_list[*]}; do
|
||||||
if [ ${use_trt} = "False" ] && [ ${precision} != "fp32" ]; then
|
if [ ${use_trt} = "False" ] && [ ${precision} != "fp32" ]; then
|
||||||
|
@ -133,8 +136,8 @@ for train_model in ${train_model_list[*]}; do
|
||||||
fi
|
fi
|
||||||
for rec_batch_size in ${rec_batch_size_list[*]}; do
|
for rec_batch_size in ${rec_batch_size_list[*]}; do
|
||||||
save_log_path="${log_path}/${model_name}_${slim_trainer}_gpu_usetensorrt_${use_trt}_usefp16_${precision}_recbatchnum_${rec_batch_size}_infer.log"
|
save_log_path="${log_path}/${model_name}_${slim_trainer}_gpu_usetensorrt_${use_trt}_usefp16_${precision}_recbatchnum_${rec_batch_size}_infer.log"
|
||||||
command="${python} ${inference} --use_gpu=True --use_tensorrt=${use_trt} --precision=${precision} --benchmark=True --det_model_dir=${log_path}/${eval_model_name}_infer --rec_batch_num=${rec_batch_size} --rec_model_dir=${rec_model_dir} --image_dir=${img_dir} --save_log_path=${save_log_path}"
|
command="${env} ${python} ${inference} --use_gpu=True --use_tensorrt=${use_trt} --precision=${precision} --benchmark=True --det_model_dir=${log_path}/${eval_model_name}_infer --rec_batch_num=${rec_batch_size} --rec_model_dir=${rec_model_dir} --image_dir=${img_dir} --save_log_path=${save_log_path}"
|
||||||
${python} ${inference} --use_gpu=True --use_tensorrt=${use_trt} --precision=${precision} --benchmark=True --det_model_dir=${log_path}/${eval_model_name}_infer --rec_batch_num=${rec_batch_size} --rec_model_dir=${rec_model_dir} --image_dir=${img_dir} --save_log_path=${save_log_path}
|
${env} ${python} ${inference} --use_gpu=True --use_tensorrt=${use_trt} --precision=${precision} --benchmark=True --det_model_dir=${log_path}/${eval_model_name}_infer --rec_batch_num=${rec_batch_size} --rec_model_dir=${rec_model_dir} --image_dir=${img_dir} --save_log_path=${save_log_path}
|
||||||
status_check $? "${trainer}" "${command}" "${save_log_path}"
|
status_check $? "${trainer}" "${command}" "${save_log_path}"
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
|
|
@ -11,5 +11,5 @@ cpu_threads_list: 1|6
|
||||||
rec_batch_size_list: 1|6
|
rec_batch_size_list: 1|6
|
||||||
gpu_trt_list: True|False
|
gpu_trt_list: True|False
|
||||||
gpu_precision_list: fp32|fp16|int8
|
gpu_precision_list: fp32|fp16|int8
|
||||||
|
infer_gpu_id: 0
|
||||||
log_path: ./output
|
log_path: ./output
|
||||||
|
|
30
test/test.sh
30
test/test.sh
|
@ -64,14 +64,13 @@ rec_batch_size_list=$(func_parser "${lines[9]}")
|
||||||
gpu_trt_list=$(func_parser "${lines[10]}")
|
gpu_trt_list=$(func_parser "${lines[10]}")
|
||||||
gpu_precision_list=$(func_parser "${lines[11]}")
|
gpu_precision_list=$(func_parser "${lines[11]}")
|
||||||
|
|
||||||
log_path=$(func_parser "${lines[12]}")
|
log_path=$(func_parser "${lines[13]}")
|
||||||
|
|
||||||
function status_check(){
|
function status_check(){
|
||||||
last_status=$1 # the exit code
|
last_status=$1 # the exit code
|
||||||
run_model=$2
|
run_model=$2
|
||||||
run_command=$3
|
run_command=$3
|
||||||
save_log=$4
|
save_log=$4
|
||||||
echo ${case3}
|
|
||||||
if [ $last_status -eq 0 ]; then
|
if [ $last_status -eq 0 ]; then
|
||||||
echo -e "\033[33m $run_model successfully with command - ${run_command}! \033[0m" | tee -a ${save_log}
|
echo -e "\033[33m $run_model successfully with command - ${run_command}! \033[0m" | tee -a ${save_log}
|
||||||
else
|
else
|
||||||
|
@ -97,10 +96,16 @@ for train_model in ${train_model_list[*]}; do
|
||||||
if [ ${gpu} = "-1" ];then
|
if [ ${gpu} = "-1" ];then
|
||||||
lanuch=""
|
lanuch=""
|
||||||
use_gpu=False
|
use_gpu=False
|
||||||
|
env=""
|
||||||
elif [ ${#gpu} -le 1 ];then
|
elif [ ${#gpu} -le 1 ];then
|
||||||
launch=""
|
launch=""
|
||||||
|
env="CUDA_VISIBLE_DEVICES=${gpu}"
|
||||||
else
|
else
|
||||||
launch="-m paddle.distributed.launch --log_dir=./debug/ --gpus ${gpu}"
|
launch="-m paddle.distributed.launch --log_dir=./debug/ --gpus ${gpu}"
|
||||||
|
IFS=","
|
||||||
|
array=(${gpu})
|
||||||
|
env="CUDA_VISIBLE_DEVICES=${array[0]}"
|
||||||
|
IFS="|"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for auto_cast in ${auto_cast_list[*]}; do
|
for auto_cast in ${auto_cast_list[*]}; do
|
||||||
|
@ -122,13 +127,13 @@ for train_model in ${train_model_list[*]}; do
|
||||||
export_model="tools/export_model.py"
|
export_model="tools/export_model.py"
|
||||||
fi
|
fi
|
||||||
save_log=${log_path}/${model_name}_${slim_trainer}_autocast_${auto_cast}_gpuid_${gpu}
|
save_log=${log_path}/${model_name}_${slim_trainer}_autocast_${auto_cast}_gpuid_${gpu}
|
||||||
command="${python} ${launch} ${trainer} -c ${yml_file} -o Global.epoch_num=${epoch} Global.eval_batch_step=${eval_batch_step} Global.auto_cast=${auto_cast} Global.save_model_dir=${save_log} Global.use_gpu=${use_gpu}"
|
command="${env} ${python} ${launch} ${trainer} -c ${yml_file} -o Global.epoch_num=${epoch} Global.eval_batch_step=${eval_batch_step} Global.auto_cast=${auto_cast} Global.save_model_dir=${save_log} Global.use_gpu=${use_gpu}"
|
||||||
echo ${python} ${launch} ${trainer} -c ${yml_file} -o Global.epoch_num=${epoch} Global.eval_batch_step=${eval_batch_step} Global.auto_cast=${auto_cast} Global.save_model_dir=${save_log} Global.use_gpu=${use_gpu}
|
${env} ${python} ${launch} ${trainer} -c ${yml_file} -o Global.epoch_num=${epoch} Global.eval_batch_step=${eval_batch_step} Global.auto_cast=${auto_cast} Global.save_model_dir=${save_log} Global.use_gpu=${use_gpu}
|
||||||
# status_check $? "${trainer}" "${command}" "${save_log}/train.log"
|
status_check $? "${trainer}" "${command}" "${save_log}/train.log"
|
||||||
|
|
||||||
command="${python} ${export_model} -c ${yml_file} -o Global.pretrained_model=${save_log}/best_accuracy Global.save_inference_dir=${save_log}/export_inference/ Global.save_model_dir=${save_log}"
|
command="${env} ${python} ${export_model} -c ${yml_file} -o Global.pretrained_model=${save_log}/best_accuracy Global.save_inference_dir=${save_log}/export_inference/ Global.save_model_dir=${save_log}"
|
||||||
echo ${python} ${export_model} -c ${yml_file} -o Global.pretrained_model=${save_log}/best_accuracy Global.save_inference_dir=${save_log}/export_inference/ Global.save_model_dir=${save_log}
|
${env} ${python} ${export_model} -c ${yml_file} -o Global.pretrained_model=${save_log}/best_accuracy Global.save_inference_dir=${save_log}/export_inference/ Global.save_model_dir=${save_log}
|
||||||
# status_check $? "${trainer}" "${command}" "${save_log}/train.log"
|
status_check $? "${trainer}" "${command}" "${save_log}/train.log"
|
||||||
|
|
||||||
if [ "${model_name}" = "det" ]; then
|
if [ "${model_name}" = "det" ]; then
|
||||||
export rec_batch_size_list=( "1" )
|
export rec_batch_size_list=( "1" )
|
||||||
|
@ -148,8 +153,8 @@ for train_model in ${train_model_list[*]}; do
|
||||||
for rec_batch_size in ${rec_batch_size_list[*]}; do
|
for rec_batch_size in ${rec_batch_size_list[*]}; do
|
||||||
save_log_path="${log_path}/${model_name}_${slim_trainer}_cpu_usemkldnn_${use_mkldnn}_cputhreads_${threads}_recbatchnum_${rec_batch_size}_infer.log"
|
save_log_path="${log_path}/${model_name}_${slim_trainer}_cpu_usemkldnn_${use_mkldnn}_cputhreads_${threads}_recbatchnum_${rec_batch_size}_infer.log"
|
||||||
command="${python} ${inference} --enable_mkldnn=${use_mkldnn} --use_gpu=False --cpu_threads=${threads} --benchmark=True --det_model_dir=${save_log}/export_inference/ --rec_batch_num=${rec_batch_size} --rec_model_dir=${rec_model_dir} --image_dir=${img_dir} --save_log_path=${save_log_path}"
|
command="${python} ${inference} --enable_mkldnn=${use_mkldnn} --use_gpu=False --cpu_threads=${threads} --benchmark=True --det_model_dir=${save_log}/export_inference/ --rec_batch_num=${rec_batch_size} --rec_model_dir=${rec_model_dir} --image_dir=${img_dir} --save_log_path=${save_log_path}"
|
||||||
echo ${python} ${inference} --enable_mkldnn=${use_mkldnn} --use_gpu=False --cpu_threads=${threads} --benchmark=True --det_model_dir=${save_log}/export_inference/ --rec_batch_num=${rec_batch_size} --rec_model_dir=${rec_model_dir} --image_dir=${img_dir} --save_log_path=${save_log_path}
|
${python} ${inference} --enable_mkldnn=${use_mkldnn} --use_gpu=False --cpu_threads=${threads} --benchmark=True --det_model_dir=${save_log}/export_inference/ --rec_batch_num=${rec_batch_size} --rec_model_dir=${rec_model_dir} --image_dir=${img_dir} --save_log_path=${save_log_path}
|
||||||
# status_check $? "${inference}" "${command}" "${save_log}"
|
status_check $? "${inference}" "${command}" "${save_log}"
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
@ -161,8 +166,9 @@ for train_model in ${train_model_list[*]}; do
|
||||||
fi
|
fi
|
||||||
for rec_batch_size in ${rec_batch_size_list[*]}; do
|
for rec_batch_size in ${rec_batch_size_list[*]}; do
|
||||||
save_log_path="${log_path}/${model_name}_${slim_trainer}_gpu_usetensorrt_${use_trt}_usefp16_${precision}_recbatchnum_${rec_batch_size}_infer.log"
|
save_log_path="${log_path}/${model_name}_${slim_trainer}_gpu_usetensorrt_${use_trt}_usefp16_${precision}_recbatchnum_${rec_batch_size}_infer.log"
|
||||||
echo ${python} ${inference} --use_gpu=True --use_tensorrt=${use_trt} --precision=${precision} --benchmark=True --det_model_dir=${save_log}/export_inference/ --rec_batch_num=${rec_batch_size} --rec_model_dir=${rec_model_dir} --image_dir=${img_dir} --save_log_path=${save_log_path}
|
command="${env} ${python} ${inference} --use_gpu=True --use_tensorrt=${use_trt} --precision=${precision} --benchmark=True --det_model_dir=${save_log}/export_inference/ --rec_batch_num=${rec_batch_size} --rec_model_dir=${rec_model_dir} --image_dir=${img_dir} --save_log_path=${save_log_path}"
|
||||||
# status_check $? "${inference}" "${command}" "${save_log}"
|
${env} ${python} ${inference} --use_gpu=True --use_tensorrt=${use_trt} --precision=${precision} --benchmark=True --det_model_dir=${save_log}/export_inference/ --rec_batch_num=${rec_batch_size} --rec_model_dir=${rec_model_dir} --image_dir=${img_dir} --save_log_path=${save_log_path}
|
||||||
|
status_check $? "${inference}" "${command}" "${save_log}"
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
|
Loading…
Reference in New Issue