From 8e324a1c20f3916dd577080d13a0703f4de58165 Mon Sep 17 00:00:00 2001 From: Vladislav Denisov Date: Sun, 13 Oct 2024 14:17:11 +0400 Subject: [PATCH] Changing the approach to naming docker containers and launching in them --- ...NNXRuntime.xml => ONNX_Runtime_Python.xml} | 2 +- ...NNXRuntime.yml => ONNX_Runtime_Python.yml} | 0 .../{OpenCV.xml => OpenCV_DNN_Python.xml} | 2 +- .../{OpenCV.yml => OpenCV_DNN_Python.yml} | 0 ...NNXRuntime.xml => ONNX_Runtime_Python.xml} | 0 .../{OpenCV.xml => OpenCV_DNN_Python.xml} | 0 demo/linux.sh | 23 ++++++++++++------- src/benchmark/executors.py | 4 ---- 8 files changed, 17 insertions(+), 14 deletions(-) rename demo/accuracy_checker_configs/{ONNXRuntime.xml => ONNX_Runtime_Python.xml} (86%) rename demo/accuracy_checker_configs/{ONNXRuntime.yml => ONNX_Runtime_Python.yml} (100%) rename demo/accuracy_checker_configs/{OpenCV.xml => OpenCV_DNN_Python.xml} (86%) rename demo/accuracy_checker_configs/{OpenCV.yml => OpenCV_DNN_Python.yml} (100%) rename demo/benchmark_configs/{ONNXRuntime.xml => ONNX_Runtime_Python.xml} (100%) rename demo/benchmark_configs/{OpenCV.xml => OpenCV_DNN_Python.xml} (100%) diff --git a/demo/accuracy_checker_configs/ONNXRuntime.xml b/demo/accuracy_checker_configs/ONNX_Runtime_Python.xml similarity index 86% rename from demo/accuracy_checker_configs/ONNXRuntime.xml rename to demo/accuracy_checker_configs/ONNX_Runtime_Python.xml index 08a62e4bb..d3bd0a1eb 100644 --- a/demo/accuracy_checker_configs/ONNXRuntime.xml +++ b/demo/accuracy_checker_configs/ONNX_Runtime_Python.xml @@ -9,7 +9,7 @@ /media/models - ONNXRuntime + ONNX Runtime Python CPU {CONFIG_PATH} diff --git a/demo/accuracy_checker_configs/ONNXRuntime.yml b/demo/accuracy_checker_configs/ONNX_Runtime_Python.yml similarity index 100% rename from demo/accuracy_checker_configs/ONNXRuntime.yml rename to demo/accuracy_checker_configs/ONNX_Runtime_Python.yml diff --git a/demo/accuracy_checker_configs/OpenCV.xml b/demo/accuracy_checker_configs/OpenCV_DNN_Python.xml similarity index 86% rename from demo/accuracy_checker_configs/OpenCV.xml rename to demo/accuracy_checker_configs/OpenCV_DNN_Python.xml index db6bf8d7f..deb1a893c 100644 --- a/demo/accuracy_checker_configs/OpenCV.xml +++ b/demo/accuracy_checker_configs/OpenCV_DNN_Python.xml @@ -9,7 +9,7 @@ /media/models - OpenCV + OpenCV DNN Python CPU {CONFIG_PATH} diff --git a/demo/accuracy_checker_configs/OpenCV.yml b/demo/accuracy_checker_configs/OpenCV_DNN_Python.yml similarity index 100% rename from demo/accuracy_checker_configs/OpenCV.yml rename to demo/accuracy_checker_configs/OpenCV_DNN_Python.yml diff --git a/demo/benchmark_configs/ONNXRuntime.xml b/demo/benchmark_configs/ONNX_Runtime_Python.xml similarity index 100% rename from demo/benchmark_configs/ONNXRuntime.xml rename to demo/benchmark_configs/ONNX_Runtime_Python.xml diff --git a/demo/benchmark_configs/OpenCV.xml b/demo/benchmark_configs/OpenCV_DNN_Python.xml similarity index 100% rename from demo/benchmark_configs/OpenCV.xml rename to demo/benchmark_configs/OpenCV_DNN_Python.xml diff --git a/demo/linux.sh b/demo/linux.sh index 32bb5bdef..93bc17dbf 100644 --- a/demo/linux.sh +++ b/demo/linux.sh @@ -1,6 +1,6 @@ #!/bin/bash -supported_frameworks="OpenVINO_DLDT TensorFlow MXNet PyTorch ONNXRuntime OpenCV" +supported_frameworks="OpenVINO_DLDT TensorFlow MXNet ONNXRuntime OpenCV PyTorch" usage() { echo "Usage: $0 [-l LOGIN] [-p PASSWORD] [-f FRAMEWORK] [-d GIT_LINK_TO_DATASET]" @@ -121,19 +121,26 @@ echo "[ INFO ] The name of repository with datasets is $dli_dataset_repo_name" echo "[ INFO ] Build a base image has been started" docker build -t ubuntu_for_dli --build-arg DATASET_DOWNLOAD_LINK=$benchmark_datasets . echo "[ INFO ] Build a base image has been completed" + cd ./$framework if [ "$framework" = "OpenVINO_DLDT" ]; then docker_name="openvino_${openvino_version}" +elif [ "$framework" = "ONNXRuntime" ]; then + docker_name="ONNX_Runtime_Python" +elif [ "$framework" = "OpenCV" ]; then + docker_name="OpenCV_DNN_Python" +elif [ "$framework" = "PyTorch" ]; then + docker_name="PyTorch" else - docker_name=${framework,,} + docker_name=${framework} fi -image_name=${docker_name} +image_name=${docker_name,,} echo "[ INFO ] Build a $image_name image has been started" docker build -t $image_name . echo "[ INFO ] Build a $image_name image has been completed" echo "[ INFO ] Creation of archive with Docker image" -archive_name="$docker_name.tar" +archive_name="$image_name.tar" docker save $image_name -o $archive_name archive_path="$PWD/$archive_name" echo "[ INFO ] Archive ${archive_path} has been created" @@ -166,7 +173,7 @@ cd $dlb_server/src/deployment $PYTHON deploy.py -s $ip_address -l $login -p itmm \ -i $archive_path \ -d $server_folder \ - -n $framework \ + -n $docker_name \ --machine_list $deployment_config \ --project_folder $dlb_client echo "[ INFO ] Deployment of DLI Benchmark system has been completed" @@ -176,7 +183,7 @@ cd $demo_folder benchmark_config="benchmark_config.xml" benchmark_config_path="${PWD}/${benchmark_config}" [ -f $benchmark_config_path ] && rm -rf $benchmark_config_path -template_benchmark_config="benchmark_configs/${framework}.xml" +template_benchmark_config="benchmark_configs/${docker_name}.xml" echo "[ INFO ] Using template config file ${template_benchmark_config}" sed "s@{DLI_DATASET_REPO_NAME}@$dli_dataset_repo_name@g" $template_benchmark_config > $benchmark_config_path echo "[ INFO ] Copying of benchmark configuration file ${benchmark_config_path} to server" @@ -190,8 +197,8 @@ echo "[ INFO ] Preparing configuration for accuracy checker" accuracy_checker_config="accuracy_checker_config.xml" accuracy_checker_config_path="${PWD}/${accuracy_checker_config}" [ -f $accuracy_checker_config_path ] && rm -rf $accuracy_checker_config_path -config_path="${PWD}/accuracy_checker_configs/${framework}.yml" -template_accuracy_checker_config="accuracy_checker_configs/${framework}.xml" +config_path="${PWD}/accuracy_checker_configs/${docker_name}.yml" +template_accuracy_checker_config="accuracy_checker_configs/${docker_name}.xml" echo "[ INFO ] Using template config file ${template_accuracy_checker_config}" sed "s@{CONFIG_PATH}@$config_path@g" $template_accuracy_checker_config > $accuracy_checker_config_path echo "[ INFO ] Copying of accuracy checker configuration ${accuracy_checker_config_path} file to server" diff --git a/src/benchmark/executors.py b/src/benchmark/executors.py index b1da71f4b..8901a1f08 100644 --- a/src/benchmark/executors.py +++ b/src/benchmark/executors.py @@ -24,10 +24,6 @@ def get_executor(executor_type, log): raise ValueError('Executor type must be from list: host_machine, docker_container') def set_target_framework(self, target_framework): - if target_framework == 'ONNX Runtime Python' or target_framework == 'ONNX Runtime': - target_framework = 'ONNXRuntime' - elif target_framework == 'OpenCV DNN Python' or target_framework == 'OpenCV DNN Cpp': - target_framework = 'OpenCV' self.target_framework = target_framework.replace(' ', '_') @abc.abstractmethod