提交 14af02be 编写于 作者: J juncaipeng 提交者: Yan Chunwei

Modify benchmark (#1851)

上级 8457387a
......@@ -30,6 +30,9 @@ DEFINE_string(input_shape,
"1,3,224,224",
"input shapes, separated by colon and comma");
DEFINE_string(result_filename, "", "save test result");
DEFINE_bool(run_model_optimize,
false,
"apply model_optimize_tool to model, use optimized model to test");
namespace paddle {
namespace lite_api {
......@@ -172,13 +175,17 @@ int main(int argc, char** argv) {
}
// Output optimized model
paddle::lite_api::OutputOptModel(
FLAGS_model_dir, save_optimized_model_dir, input_shapes);
if (FLAGS_run_model_optimize) {
paddle::lite_api::OutputOptModel(
FLAGS_model_dir, save_optimized_model_dir, input_shapes);
}
#ifdef LITE_WITH_LIGHT_WEIGHT_FRAMEWORK
// Run inference using optimized model
std::string run_model_dir =
FLAGS_run_model_optimize ? save_optimized_model_dir : FLAGS_model_dir;
paddle::lite_api::Run(input_shapes,
save_optimized_model_dir,
run_model_dir,
FLAGS_repeats,
FLAGS_threads,
FLAGS_warmup,
......
......@@ -5,18 +5,22 @@ if [ $# -lt 2 ];
then
echo "Input error"
echo "USAGE:"
echo " sh benchmark.sh benchmark_bin_path test_models_dir"
echo " sh benchmark.sh benchmark_bin_path test_models_dir arm_bi"
echo " sh benchmark.sh benchmark_bin_path benchmark_models_path"
echo " sh benchmark.sh benchmark_bin_path benchmark_models_path is_run_model_optimize"
exit
fi
BENCHMARK_BIN=$1
MODELS_DIR=$2
ARM_BI=$3
ANDROID_DIR=/data/local/tmp
RESULT_FILENAME="result.txt"
WARMUP=10
REPEATS=30
BENCHMARK_BIN=$1
MODELS_DIR=$2
IS_RUN_MODEL_OPTIMIZE=false
if [ $# -gt 2 ];
then
IS_RUN_MODEL_OPTIMIZE=$3
fi
adb push $BENCHMARK_BIN $ANDROID_DIR/benchmark_bin
adb shell chmod 777 $ANDROID_DIR/benchmark_bin
......@@ -25,11 +29,11 @@ adb push $MODELS_DIR $ANDROID_DIR
adb shell "echo PaddleLite Benchmark > $ANDROID_DIR/$RESULT_FILENAME"
for threads in 1 2 4
do
adb shell "echo ABI=$ARM_BI Threads=$threads Warmup=$WARMUP Repeats=$REPEATS >> $ANDROID_DIR/$RESULT_FILENAME"
adb shell "echo Threads=$threads Warmup=$WARMUP Repeats=$REPEATS >> $ANDROID_DIR/$RESULT_FILENAME"
for model_name in `ls $MODELS_DIR`
do
echo $model_name
adb shell "$ANDROID_DIR/benchmark_bin --model_dir=$ANDROID_DIR/${MODELS_DIR##*/}/$model_name --warmup=$WARMUP --repeats=$REPEATS --threads=$threads --result_filename=$ANDROID_DIR/$RESULT_FILENAME"
adb shell "$ANDROID_DIR/benchmark_bin --model_dir=$ANDROID_DIR/${MODELS_DIR##*/}/$model_name --warmup=$WARMUP --repeats=$REPEATS --threads=$threads --result_filename=$ANDROID_DIR/$RESULT_FILENAME --run_model_optimize=$IS_RUN_MODEL_OPTIMIZE"
done
adb shell "echo >> $ANDROID_DIR/$RESULT_FILENAME"
done
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册