1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- # Use docker: paddlepaddle/paddle:latest-gpu-cuda10.1-cudnn7 paddle=2.1.2 python3.7
- #
- # Usage:
- # git clone https://github.com/PaddlePaddle/PaddleDetection.git
- # cd PaddleDetection
- # bash benchmark/run_all.sh
- log_path=${LOG_PATH_INDEX_DIR:-$(pwd)} # benchmark系统指定该参数,不需要跑profile时,log_path指向存speed的目录
- # run prepare.sh
- bash benchmark/prepare.sh
- model_name_list=(faster_rcnn fcos deformable_detr gfl hrnet higherhrnet solov2 jde fairmot)
- fp_item_list=(fp32)
- max_epoch=2
- for model_item in ${model_name_list[@]}; do
- for fp_item in ${fp_item_list[@]}; do
- case ${model_item} in
- faster_rcnn) bs_list=(1 8) ;;
- fcos) bs_list=(2) ;;
- deformable_detr) bs_list=(2) ;;
- gfl) bs_list=(2) ;;
- hrnet) bs_list=(64) ;;
- higherhrnet) bs_list=(20) ;;
- solov2) bs_list=(2) ;;
- jde) bs_list=(4) ;;
- fairmot) bs_list=(6) ;;
- *) echo "wrong model_name"; exit 1;
- esac
- for bs_item in ${bs_list[@]}
- do
- run_mode=sp
- log_name=detection_${model_item}_bs${bs_item}_${fp_item} # 如:clas_MobileNetv1_mp_bs32_fp32_8
- echo "index is speed, 1gpus, begin, ${log_name}"
- CUDA_VISIBLE_DEVICES=0 bash benchmark/run_benchmark.sh ${run_mode} ${bs_item} \
- ${fp_item} ${max_epoch} ${model_item} | tee ${log_path}/${log_name}_speed_1gpus 2>&1
- sleep 60
- run_mode=mp
- log_name=detection_${model_item}_bs${bs_item}_${fp_item} # 如:clas_MobileNetv1_mp_bs32_fp32_8
- echo "index is speed, 8gpus, run_mode is multi_process, begin, ${log_name}"
- CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 bash benchmark/run_benchmark.sh ${run_mode} \
- ${bs_item} ${fp_item} ${max_epoch} ${model_item}| tee ${log_path}/${log_name}_speed_8gpus8p 2>&1
- sleep 60
- done
- done
- done
|