Adlik 是深度学习模型的端到端优化框架。Adlik的目标是在云和嵌入式环境中加速深度学习推理过程。
使用Adlik框架,不同的深度学习模型可以以非常灵活和简单的方式以高性能部署到不同的平台。
在云环境中,编译后的模型和Adlik推理引擎应构建为docker镜像,并部署为容器。
在边缘环境中,应将Adlik推理引擎部署为容器。编译后的模型应该转移到边缘环境,Adlik推理引擎应该自动更新和加载模型。
在设备环境中,AdlikInferenceEngine和编译后的模型应编译为二进制文件。想要在设备上运行模型推理的用户应该将用户定义的AI函数和Adlik二进制文件链接到执行文件,并直接运行。
构建本指南用于在 Ubuntu 系统上构建Adlik 。首先,安装 Git 和 Bazel。然后,克隆Adlik并将工作目录更改为源目录:gitclonehttps://github.com/ZTE/Adlik.gitcdAdlik构建客户端安装以下软件包:
python3-setuptoolspython3-wheel构建客户端:
bazelbuild//adlik_serving/clients/python:build_pip_package-copt构建pip包:
mkdir/tmp/pip-packages&&bazel-bin/adlik_serving/clients/python/build_pip_package/tmp/pip-packages构建服务首先,安装以下软件包:automakelibtbb2libtoolmakepython3-six使用OpenVINO运行时构建服务从 OpenVINO 安装intel-openvino-runtime-ubuntu<OS_VERSION>-<VERSION>包 。
假设OpenVINO的安装路径为/opt/intel/openvino_VERSION,运行如下命令:
exportINTEL_CVSDK_DIR=/opt/intel/openvino_VERSIONexportInferenceEngine_DIR=$INTEL_CVSDK_DIR/deployment_tools/inference_engine/sharebazelbuild//adlik_serving\--config=openvino\-copt使用TensorFlowCPU运行时构建服务运行以下命令:
bazelbuild//adlik_serving\--config=tensorflow-cpu\-copt使用TensorFlowGPU运行时构建服务假设使用CUDA版本11.0构建。从这里和 这里安装以下软件包 :
cuda-cupti-dev-11-0libcublas-dev-11-0libcudnn8=*+cuda11.0libcudnn8-dev=*+cuda11.0libcufft-dev-11-0libcurand-dev-11-0libcusolver-dev-11-0libcusparse-dev-11-0libnvinfer7=7.2.*+cuda11.0libnvinfer-dev=7.2.*+cuda11.0libnvinfer-plugin7=7.2.*+cuda11.0libnvinfer-plugin-dev=7.2.*+cuda11.0运行以下命令:
envTF_CUDA_VERSION=11.0TF_NEED_TENSORRT=1\bazelbuild//adlik_serving\--config=tensorflow-gpu\-copt\--incompatible_use_specific_tool_files=false使用TensorFlowLiteCPU运行时构建服务运行以下命令:
bazelbuild//adlik_serving\--config=tensorflow-lite-cpu\-copt使用TensorRT运行时构建服务假设使用CUDA版本11.0构建。从这里和 这里安装以下软件包 :
cuda-cupti-dev-11-0cuda-nvml-dev-11-0cuda-nvrtc-11-0libcublas-dev-11-0libcudnn8=*+cuda11.0libcudnn8-dev=*+cuda11.0libcufft-dev-11-0libcurand-dev-11-0libcusolver-dev-11-0libcusparse-dev-11-0libnvinfer7=7.2.*+cuda11.0libnvinfer-dev=7.2.*+cuda11.0libnvonnxparsers7=7.2.*+cuda11.0libnvonnxparsers-dev=7.2.*+cuda11.0运行以下命令:
envTF_CUDA_VERSION=11.0\bazelbuild//adlik_serving\--config=TensorRT\-copt\--action_env=LIBRARY_PATH=/usr/local/cuda-11.0/lib64/stubs\--incompatible_use_specific_tool_files=false使用TF-TRT运行时构建服务假设使用CUDA版本11.0构建。从这里和 这里安装以下软件包 :
cuda-cupti-dev-11-0libcublas-dev-11-0libcudnn8=*+cuda11.0libcudnn8-dev=*+cuda11.0libcufft-dev-11-0libcurand-dev-11-0libcusolver-dev-11-0libcusparse-dev-11-0libnvinfer7=7.2.*+cuda11.0libnvinfer-dev=7.2.*+cuda11.0libnvinfer-plugin7=7.2.*+cuda11.0libnvinfer-plugin-dev=7.2.*+cuda11.0运行以下命令:
envTF_CUDA_VERSION=11.0TF_NEED_TENSORRT=1\bazelbuild//adlik_serving\--config=tensorflow-tensorrt\-copt\--incompatible_use_specific_tool_files=false使用Tvm运行时构建服务安装以下软件包:
build-essentialcmaketvm运行以下命令:
bazelbuild//adlik_serving\--config=tvm\-copt
评论