From 2ec65ae0db4390addc9d0820947ca806682a5429 Mon Sep 17 00:00:00 2001 From: Tao Luo Date: Tue, 6 Nov 2018 21:00:32 +0800 Subject: [PATCH] download face_model in CMakeLists.txt test=develop --- paddle/fluid/inference/CMakeLists.txt | 2 +- .../fluid/inference/tests/api/CMakeLists.txt | 43 ++++++++++++++++--- paddle/fluid/inference/{ => tests}/test.cmake | 0 3 files changed, 37 insertions(+), 8 deletions(-) rename paddle/fluid/inference/{ => tests}/test.cmake (100%) diff --git a/paddle/fluid/inference/CMakeLists.txt b/paddle/fluid/inference/CMakeLists.txt index d31c8e3b7..e5678cf60 100644 --- a/paddle/fluid/inference/CMakeLists.txt +++ b/paddle/fluid/inference/CMakeLists.txt @@ -1,5 +1,5 @@ if(WITH_TESTING) - include(test.cmake) # some generic cmake funtion for inference + include(tests/test.cmake) # some generic cmake funtion for inference endif() # analysis and tensorrt must be added before creating static library, # otherwise, there would be undefined reference to them in static library. diff --git a/paddle/fluid/inference/tests/api/CMakeLists.txt b/paddle/fluid/inference/tests/api/CMakeLists.txt index b57a26b47..88e632bf9 100644 --- a/paddle/fluid/inference/tests/api/CMakeLists.txt +++ b/paddle/fluid/inference/tests/api/CMakeLists.txt @@ -1,5 +1,11 @@ set(INFERENCE_EXTRA_DEPS paddle_inference_api paddle_fluid_api ir_pass_manager analysis_predictor) +function(download_model install_dir model_name) + if (NOT EXISTS ${install_dir}) + inference_download_and_uncompress(${install_dir} ${INFERENCE_URL} ${model_name}) + endif() +endfunction() + function(download_model_and_data install_dir model_name data_name) if (NOT EXISTS ${install_dir}) inference_download_and_uncompress(${install_dir} ${INFERENCE_URL} ${model_name}) @@ -13,6 +19,13 @@ function(inference_analysis_api_test target install_dir filename) ARGS --infer_model=${install_dir}/model --infer_data=${install_dir}/data.txt) endfunction() +function(inference_analysis_api_test_with_fake_data target install_dir filename model_name) + download_model(${install_dir} ${model_name}) + inference_analysis_test(${target} SRCS ${filename} + EXTRA_DEPS ${INFERENCE_EXTRA_DEPS} + ARGS --infer_model=${install_dir}/model) +endfunction() + # RNN1 if(NOT APPLE) set(RNN1_INSTALL_DIR "${INFERENCE_DEMO_INSTALL_DIR}/rnn1") @@ -61,17 +74,33 @@ inference_analysis_api_test(test_analyzer_seq_conv1 ${SEQ_CONV1_INSTALL_DIR} ana # ocr set(OCR_INSTALL_DIR "${INFERENCE_DEMO_INSTALL_DIR}/ocr") if (NOT EXISTS ${OCR_INSTALL_DIR}) - inference_download_and_uncompress(${OCR_INSTALL_DIR} "http://paddlemodels.cdn.bcebos.com/" "inference-vis-demos%2Focr.tar.gz") + inference_download_and_uncompress(${OCR_INSTALL_DIR} "http://paddlemodels.cdn.bcebos.com/" "inference-vis-demos%2Focr.tar.gz") endif() inference_analysis_api_test(test_analyzer_ocr ${OCR_INSTALL_DIR} analyzer_vis_tester.cc) # resnet50 -set(RESNET50_INSTALL_DIR "${INFERENCE_DEMO_INSTALL_DIR}/resnet50") -if (NOT EXISTS ${RESNET50_INSTALL_DIR}) - inference_download_and_uncompress(${RESNET50_INSTALL_DIR} ${INFERENCE_URL} "resnet50_model.tar.gz") -endif() -inference_analysis_test(test_analyzer_resnet50 SRCS analyzer_resnet50_tester.cc - EXTRA_DEPS ${INFERENCE_EXTRA_DEPS} ARGS --infer_model=${RESNET50_INSTALL_DIR}/model) +inference_analysis_api_test_with_fake_data(test_analyzer_resnet50 + "${INFERENCE_DEMO_INSTALL_DIR}/resnet50" analyzer_resnet50_tester.cc "resnet50_model.tar.gz") + +# face +set(FACE_INSTALL_DIR "${INFERENCE_DEMO_INSTALL_DIR}/face") +inference_analysis_api_test_with_fake_data(test_analyzer_face_align1 + "${FACE_INSTALL_DIR}/align1" analyzer_face_tester.cc "face%2Falign1_model.tar.gz") +inference_analysis_api_test_with_fake_data(test_analyzer_face_align2 + "${FACE_INSTALL_DIR}/align2" analyzer_face_tester.cc "face%2Falign2_model.tar.gz") +inference_analysis_api_test_with_fake_data(test_analyzer_face_feature1 + "${FACE_INSTALL_DIR}/feature1" analyzer_face_tester.cc "face%2Ffeature_id_model.tar.gz") +# TODO(luotao): Disable this test due to analysis is timeout 10 minutes. +# inference_analysis_api_test_with_fake_data(test_analyzer_face_feature2 +# "${FACE_INSTALL_DIR}/feature2" analyzer_face_tester.cc "face%2Ffeature_life_model.tar.gz") +inference_analysis_api_test_with_fake_data(test_analyzer_face_detect + "${FACE_INSTALL_DIR}/detect" analyzer_face_tester.cc "face%2Fdetect_model.tar.gz") +inference_analysis_api_test_with_fake_data(test_analyzer_face_demark + "${FACE_INSTALL_DIR}/demark" analyzer_face_tester.cc "face%2Fdemark_model.tar.gz") +inference_analysis_api_test_with_fake_data(test_analyzer_face_score + "${FACE_INSTALL_DIR}/score" analyzer_face_tester.cc "face%2Fscore_model.tar.gz") +inference_analysis_api_test_with_fake_data(test_analyzer_face_super_res + "${FACE_INSTALL_DIR}/super_res" analyzer_face_tester.cc "face%2Fsuper_res_model.tar.gz") # anakin if (WITH_ANAKIN AND WITH_MKL) # only needed in CI diff --git a/paddle/fluid/inference/test.cmake b/paddle/fluid/inference/tests/test.cmake similarity index 100% rename from paddle/fluid/inference/test.cmake rename to paddle/fluid/inference/tests/test.cmake -- GitLab