run_det.sh 1.98 KB
Newer Older
hysunflower's avatar
hysunflower committed
1
#!/bin/bash
LDOUBLEV's avatar
LDOUBLEV committed
2
# 提供可稳定复现性能的脚本,默认在标准docker环境内py37执行: paddlepaddle/paddle:latest-gpu-cuda10.1-cudnn7  paddle=2.1.2  py=37
LDOUBLEV's avatar
LDOUBLEV committed
3
# 执行目录: ./PaddleOCR
LDOUBLEV's avatar
LDOUBLEV committed
4
# 1 安装该模型需要的依赖 (如需开启优化策略请注明)
hysunflower's avatar
hysunflower committed
5
log_path=${LOG_PATH_INDEX_DIR:-$(pwd)}
hysunflower's avatar
hysunflower committed
6
python -m pip install -r requirements.txt
LDOUBLEV's avatar
LDOUBLEV committed
7
# 2 拷贝该模型需要数据、预训练模型
WenmuZhou's avatar
WenmuZhou committed
8
9
wget -P ./train_data/  https://paddleocr.bj.bcebos.com/dygraph_v2.0/test/icdar2015.tar && cd train_data  && tar xf icdar2015.tar && cd ../
wget -P ./pretrain_models/ https://paddle-imagenet-models-name.bj.bcebos.com/dygraph/ResNet50_vd_pretrained.pdparams
hysunflower's avatar
hysunflower committed
10
wget -P ./pretrain_models/ https://paddle-imagenet-models-name.bj.bcebos.com/dygraph/ResNet18_vd_pretrained.pdparams
hysunflower's avatar
hysunflower committed
11
wget -P ./pretrain_models/ https://paddle-imagenet-models-name.bj.bcebos.com/dygraph/ResNet50_vd_ssld_pretrained.pdparams
LDOUBLEV's avatar
LDOUBLEV committed
12
13
# 3 批量运行(如不方便批量,1,2需放到单个模型中)

WenmuZhou's avatar
WenmuZhou committed
14
model_mode_list=(det_res18_db_v2.0 det_r50_vd_east det_r50_vd_pse)
LDOUBLEV's avatar
LDOUBLEV committed
15
16
17
fp_item_list=(fp32)
for model_mode in ${model_mode_list[@]}; do
      for fp_item in ${fp_item_list[@]}; do
hysunflower's avatar
hysunflower committed
18
          if [ ${model_mode} == "det_r50_vd_east" ]; then
hysunflower's avatar
hysunflower committed
19
              bs_list=(16)
hysunflower's avatar
hysunflower committed
20
21
          else
              bs_list=(8 16)
hysunflower's avatar
hysunflower committed
22
          fi
LDOUBLEV's avatar
LDOUBLEV committed
23
          for bs_item in ${bs_list[@]}; do
hysunflower's avatar
hysunflower committed
24
            log_name=ocr_${model_mode}_bs${bs_item}_${fp_item}
LDOUBLEV's avatar
LDOUBLEV committed
25
26
            echo "index is speed, 1gpus, begin, ${model_name}"
            run_mode=sp
hysunflower's avatar
hysunflower committed
27
            CUDA_VISIBLE_DEVICES=0 bash benchmark/run_benchmark_det.sh ${run_mode} ${bs_item} ${fp_item} 1 ${model_mode} | tee ${log_path}/${log_name}_speed_1gpus 2>&1    #  (5min)
hysunflower's avatar
hysunflower committed
28
            sleep 60
LDOUBLEV's avatar
LDOUBLEV committed
29
            echo "index is speed, 8gpus, run_mode is multi_process, begin, ${model_name}"
LDOUBLEV's avatar
LDOUBLEV committed
30
            run_mode=mp
hysunflower's avatar
hysunflower committed
31
            CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 bash benchmark/run_benchmark_det.sh ${run_mode} ${bs_item} ${fp_item} 2 ${model_mode} | tee ${log_path}/${log_name}_speed_8gpus8p 2>&1
hysunflower's avatar
hysunflower committed
32
            sleep 60
LDOUBLEV's avatar
LDOUBLEV committed
33
34
35
36
37
            done
      done
done