From 2d07831ae2ebd50b23146fc6cefef0b2bdff394b Mon Sep 17 00:00:00 2001 From: lyvette Date: Mon, 26 Oct 2020 11:23:09 +0800 Subject: [PATCH] modify windows CI bat --- mindspore/lite/test/run_benchmark_nets.bat | 128 --------------------- mindspore/lite/test/win_models.cfg | 8 +- mindspore/lite/test/win_runtest.bat | 112 +++++++++++++++++- 3 files changed, 109 insertions(+), 139 deletions(-) delete mode 100644 mindspore/lite/test/run_benchmark_nets.bat diff --git a/mindspore/lite/test/run_benchmark_nets.bat b/mindspore/lite/test/run_benchmark_nets.bat deleted file mode 100644 index 3e4f5014fd..0000000000 --- a/mindspore/lite/test/run_benchmark_nets.bat +++ /dev/null @@ -1,128 +0,0 @@ -@rem Copyright 2020 Huawei Technologies Co., Ltd -@rem -@rem Licensed under the Apache License, Version 2.0 (the "License"); -@rem you may not use this file except in compliance with the License. -@rem You may obtain a copy of the License at -@rem -@rem http://www.apache.org/licenses/LICENSE-2.0 -@rem -@rem Unless required by applicable law or agreed to in writing, software -@rem distributed under the License is distributed on an "AS IS" BASIS, -@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -@rem See the License for the specific language governing permissions and -@rem limitations under the License. -@rem ============================================================================ -@echo off -@title run_benchmark_nets -setlocal enabledelayedexpansion - -SET BASEPATH=%CD% -SET OUTPUT_PATH=%BASEPATH%/output -SET TOOL_PATH=%1 -SET TOOL_PATH=%TOOL_PATH:"=%/windows_x64 -SET MODEL_PATH=%2 -SET MODEL_PATH=%MODEL_PATH:"=%/models/hiai -SET BENCHMARK_BASE=%BASEPATH:"=%/output/benchmark -SET MODEL_CONFIG=%BASEPATH%/win_models.cfg - -cd /d %BASEPATH% -IF EXIST "%BASEPATH%/output" ( - rd /s /q output -) -md output -cd /d %OUTPUT_PATH% -IF EXIST benchmark ( - rd /s /q benchmark -) -md benchmark - -SET RET_CODE=0 - -cd benchmark -unzip "%TOOL_PATH%/mindspore-lite-*-converter-win-cpu.zip" -IF NOT %errorlevel% == 0 ( - echo "Decompression of converter tool fail!" - SET RET_CODE=1 - goto run_eof -) -unzip "%TOOL_PATH%/mindspore-lite-*-win-runtime-x86-cpu.zip" -IF NOT %errorlevel% == 0 ( - echo "Decompression of runtime tool fail!" - SET RET_CODE=1 - goto run_eof -) - -md ms - -SET TYPE_ID='' -SET MODEL_NAME='' -SET SUFFIX='' - -echo "Convert models" -cd mindspore-lite-*-converter-win-cpu/converter - -for /f "tokens=1-2 delims= " %%i in (%MODEL_CONFIG%) do ( - for /f "tokens=1-2 delims=." %%k in ("%%j") do ( - SET TYPE_ID=%%i - SET MODEL_NAME=%%k - SET SUFFIX=%%l - ) - - if !TYPE_ID!==1 (converter_lite --fmk=MINDIR --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!") - if !TYPE_ID!==2 (converter_lite --fmk=MINDIR --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_train" --trainModel=true) - if !TYPE_ID!==3 (converter_lite --fmk=CAFFE --modelFile="%MODEL_PATH%/!MODEL_NAME!.prototxt" --weightFile="%MODEL_PATH%/!MODEL_NAME!.caffemodel" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!") - if !TYPE_ID!==4 (converter_lite --fmk=ONNX --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!") - if !TYPE_ID!==5 (converter_lite --fmk=TFLITE --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!") - if !TYPE_ID!==6 (converter_lite --fmk=TFLITE --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!" --quantType=AwareTraining) - if !TYPE_ID!==7 (converter_lite --fmk=TFLITE --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_posttraining" --quantType=PostTraining --configFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!_posttraining.config") - if !TYPE_ID!==8 (converter_lite --fmk=TFLITE --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_weightquant" --quantType=WeightQuant --bitNum=8 --quantWeightSize=500 --quantWeightChannel=16) - - IF !errorlevel! == 0 ( - echo "Run converter for model (TYPE_ID=!TYPE_ID!) !MODEL_NAME!.!SUFFIX! : pass!" - ) ELSE ( - echo "Run converter for model (TYPE_ID=!TYPE_ID!) !MODEL_NAME!.!SUFFIX! : fail!" - SET RET_CODE=1 - goto run_eof - ) -) - -echo "Run converted models" -cd /d %BENCHMARK_BASE%/mindspore-lite-*-win-runtime-x86-cpu/benchmark -SET INPUT_BASE=%MODEL_PATH%/input_output/input -SET OUTPUT_BASE=%MODEL_PATH%/input_output/output - -for /f "tokens=1-2 delims= " %%i in (%MODEL_CONFIG%) do ( - for /f "tokens=1-2 delims=." %%k in ("%%j") do ( - SET TYPE_ID=%%i - SET MODEL_NAME=%%k - SET SUFFIX=%%l - ) - - if !TYPE_ID!==1 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out" --accuracyThreshold=1.5) - if !TYPE_ID!==2 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_train.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out" --accuracyThreshold=1.5) - if !TYPE_ID!==3 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.ms.out") - if !TYPE_ID!==4 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out") - if !TYPE_ID!==5 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out") - if !TYPE_ID!==6 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out") - if !TYPE_ID!==7 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_posttraining.ms" --inDataFile="%MODEL_PATH%/../../quantTraining/mnist_calibration_data/00099.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!_posttraining.ms.out") - if !TYPE_ID!==8 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_weightquant.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out") - - IF !errorlevel! == 0 ( - echo "Run benchmark for model (TYPE_ID=!TYPE_ID!) !MODEL_NAME!.!SUFFIX! : pass!" - ) ELSE ( - echo "Run benchmark for model (TYPE_ID=!TYPE_ID!) !MODEL_NAME!.!SUFFIX! : fail!" - SET RET_CODE=1 - goto run_eof - ) -) - -:run_eof - IF %RET_CODE% == 0 ( - SET errorlevel=0 - echo "Run models in Windows success!" - ) ELSE ( - SET errorlevel=1 - echo "Run models in Windows fail!" - ) - cd /d %BASEPATH% - diff --git a/mindspore/lite/test/win_models.cfg b/mindspore/lite/test/win_models.cfg index c808667285..19eb510cef 100644 --- a/mindspore/lite/test/win_models.cfg +++ b/mindspore/lite/test/win_models.cfg @@ -17,8 +17,6 @@ 5 mtk_AADB_HADB_MBV2_model_f16.tflite 5 ml_object_detect_1.tflite 5 lite-model_arbitrary-image-stylization-inceptionv3_fp16_predict_1.tflite -6 lite-model_aiy_vision_classifier_birds_V1_3.tflite -6 ssd_mobilenet_v1_1_default_1.tflite -6 object_detection_mobile_object_localizer_v1_1_default_1.tflite -7 mobilenet.tflite -8 ml_face_openclose.tflite +5 scan_hms_angle1.tflite +5 scan_hms_detect.tflite + diff --git a/mindspore/lite/test/win_runtest.bat b/mindspore/lite/test/win_runtest.bat index a9c3b2278d..9c33561591 100644 --- a/mindspore/lite/test/win_runtest.bat +++ b/mindspore/lite/test/win_runtest.bat @@ -14,15 +14,115 @@ @rem ============================================================================ @echo off @title win_run_test +setlocal enabledelayedexpansion SET BASEPATH=%CD% +SET OUTPUT_PATH=%BASEPATH%/output +SET TOOL_PATH=%1 +SET TOOL_PATH=%TOOL_PATH:"=%/windows_x64 +SET MODEL_PATH_BASE=%2 +SET MODEL_PATH=%MODEL_PATH_BASE:"=%/models/hiai +SET BENCHMARK_BASE=%BASEPATH:"=%/output/benchmark +SET MODEL_CONFIG=%BASEPATH%/win_models.cfg -call run_benchmark_nets.bat %1 %2 +cd /d %BASEPATH% +IF EXIST "%BASEPATH%/output" ( + rd /s /q output +) +md output +cd /d %OUTPUT_PATH% +IF EXIST benchmark ( + rd /s /q benchmark +) +md benchmark + +SET RET_CODE=0 + +7z x -r "%TOOL_PATH%/mindspore-lite-*-converter-win-cpu.zip" -o"%BENCHMARK_BASE%" IF NOT %errorlevel% == 0 ( - echo "benchmark fail!" - SET errorlevel=1 -) ELSE ( - echo "run benchmark tests success." + echo "Decompression of converter tool fail!" + SET RET_CODE=1 + goto run_eof +) +7z x -r "%TOOL_PATH%/mindspore-lite-*-win-runtime-x86-cpu.zip" -o"%BENCHMARK_BASE%" +IF NOT %errorlevel% == 0 ( + echo "Decompression of runtime tool fail!" + SET RET_CODE=1 + goto run_eof ) -cd /d %BASEPATH% +cd benchmark +md ms + +SET TYPE_ID='' +SET MODEL_NAME='' +SET SUFFIX='' + +echo "Convert models" +cd mindspore-lite-*-converter-win-cpu/converter + +for /f "tokens=1-2 delims= " %%i in (%MODEL_CONFIG%) do ( + for /f "tokens=1-2 delims=." %%k in ("%%j") do ( + SET TYPE_ID=%%i + SET MODEL_NAME=%%k + SET SUFFIX=%%l + ) + + if !TYPE_ID!==1 (converter_lite --fmk=MINDIR --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!") + if !TYPE_ID!==2 (converter_lite --fmk=MINDIR --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_train" --trainModel=true) + if !TYPE_ID!==3 (converter_lite --fmk=CAFFE --modelFile="%MODEL_PATH%/!MODEL_NAME!.prototxt" --weightFile="%MODEL_PATH%/!MODEL_NAME!.caffemodel" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!") + if !TYPE_ID!==4 (converter_lite --fmk=ONNX --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!") + if !TYPE_ID!==5 (converter_lite --fmk=TFLITE --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!") + if !TYPE_ID!==6 (converter_lite --fmk=TFLITE --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!" --quantType=AwareTraining) + if !TYPE_ID!==7 (converter_lite --fmk=TFLITE --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_posttraining" --quantType=PostTraining --configFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!_posttraining.config") + if !TYPE_ID!==8 (converter_lite --fmk=TFLITE --modelFile="%MODEL_PATH%/!MODEL_NAME!.!SUFFIX!" --outputFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_weightquant" --quantType=WeightQuant --bitNum=8 --quantWeightSize=500 --quantWeightChannel=16) + + IF !errorlevel! == 0 ( + echo "Run converter for model (TYPE_ID=!TYPE_ID!) !MODEL_NAME!.!SUFFIX! : pass!" + ) ELSE ( + echo "Run converter for model (TYPE_ID=!TYPE_ID!) !MODEL_NAME!.!SUFFIX! : fail!" + SET RET_CODE=1 + goto run_eof + ) +) + +echo "Run converted models" +cd /d %BENCHMARK_BASE%/mindspore-lite-*-win-runtime-x86-cpu/benchmark +SET INPUT_BASE=%MODEL_PATH%/input_output/input +SET OUTPUT_BASE=%MODEL_PATH%/input_output/output + +for /f "tokens=1-2 delims= " %%i in (%MODEL_CONFIG%) do ( + for /f "tokens=1-2 delims=." %%k in ("%%j") do ( + SET TYPE_ID=%%i + SET MODEL_NAME=%%k + SET SUFFIX=%%l + ) + + if !TYPE_ID!==1 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out" --accuracyThreshold=1.5) + if !TYPE_ID!==2 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_train.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out" --accuracyThreshold=1.5) + if !TYPE_ID!==3 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.ms.out") + if !TYPE_ID!==4 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out") + if !TYPE_ID!==5 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out") + if !TYPE_ID!==6 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out") + if !TYPE_ID!==7 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_posttraining.ms" --inDataFile="%MODEL_PATH_BASE%/quantTraining/mnist_calibration_data/00099.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!_posttraining.ms.out") + if !TYPE_ID!==8 (benchmark --modelFile="%BENCHMARK_BASE%/ms/!MODEL_NAME!.!SUFFIX!_weightquant.ms" --inDataFile="%INPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.bin" --benchmarkDataFile="%OUTPUT_BASE%/!MODEL_NAME!.!SUFFIX!.ms.out") + + IF !errorlevel! == 0 ( + echo "Run benchmark for model (TYPE_ID=!TYPE_ID!) !MODEL_NAME!.!SUFFIX! : pass!" + ) ELSE ( + echo "Run benchmark for model (TYPE_ID=!TYPE_ID!) !MODEL_NAME!.!SUFFIX! : fail!" + SET RET_CODE=1 + goto run_eof + ) +) + +:run_eof + cd /d %BASEPATH% + IF %RET_CODE% == 0 ( + SET errorlevel=0 + echo "Run models in Windows success!" + ) ELSE ( + SET errorlevel=1 + echo "Run models in Windows fail!" + ) + exit /b %errorlevel%