Python Sample Usage Guide
【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge
Directory Structure
├── README.md Sample usage guide ├── config │ ├── model_generator.py Script to generate models needed for test cases │ ├── add_func.json UDF configuration file for test cases │ ├── add_graph.json Computation graph compilation configuration file for test cases │ ├── data_flow_deploy_info.json Deployment location configuration file for sample_udf_python │ ├── multi_model_deploy.json Deployment location configuration file for sample_multiple_model │ ├── sample_npu_model_deploy_info.json Deployment location configuration file for sample_npu_model │ ├── sample_pytorch_deploy_info.json Deployment location configuration file for sample_pytorch │ └── invoke_func.json UDF call NN compilation configuration file for test cases ├── sample_base.py This sample demonstrates basic DataFlow API graph construction, including construction and execution of three types of nodes: UDF, GraphPp, and UDF executing NN inference ├── sample_udf_python.py This sample demonstrates python dataflow calling udf python process ├── sample_exception.py This sample demonstrates enabling exception reporting ├── sample_pytorch.py This sample demonstrates DataFlow combined with pytorch for online model inference ├── sample_npu_model.py This sample demonstrates DataFlow online inference, with udf using npu_model to implement model sinking and data sinking scenarios ├── sample_multiple_model.py This sample constructs pytorch model as funcPp through decorator, and concatenates it with GraphPp executing onnx/pb models ├── sample_perf.py This sample is a performance profiling sample ├── udf_py │ ├── udf_add.py Implement udf multi-func functionality using python │ └── udf_control.py Implement udf functionality using python, used to control which func in udf_add is actually executed └── udf_py_ws_sample Complete sample for explaining python udf implementation ├── CMakeLists.txt UDF python complete project cmake file sample ├── func_add.json UDF python complete project configuration file sample ├── src_cpp │ └── func_add.cpp UDF python complete project C++ source file sample └── src_python └── func_add.py UDF python complete project python source file sampleEnvironment Preparation
Refer to Environment Preparation to download and install driver/firmware/CANN software packages;
Python version requirement: python3.11. The specific version should match the python version used when compiling the dataflow wheel package. If you need to use a different python version, you can refer to Compilation to recompile the ge_compiler package and install it;
The model generation script model_generator.py in the config directory depends on tensorflow-cpu and onnx, which need to be installed via pip3 install tensorflow-cpu and pip3 install onnx;
sample_pytorch.py, sample_npu_model.py samples depend on torch_npu and torchvision packages. torch_npu needs to install correspondingtorchandtorch_npupackages according to the actual environment (it is recommended to use version 2.1.0 or above, Acquisition Method). torchvision has a matching relationship with torch, and should be installed using pip3 install torchvision after torch is installed.
Running Samples
The numa_config.json file configuration below refers to numa_config Field Description and Samples
# Execute the tensorflow raw model generation script in the config directory: python3 config/model_generator.py # After execution, add.pb model and simple_model.onnx model will be generated in the config directory # Optional export ASCEND_GLOBAL_LOG_LEVEL=3 #0 debug 1 info 2 warn 3 error. Default is error level if not set # Required source {HOME}/Ascend/cann/set_env.sh #{HOME} is the CANN software package installation directory, please replace according to the actual installation path export RESOURCE_CONFIG_PATH=xxx/xxx/xxx/numa_config.json python3.11 sample_base.py python3.11 sample_udf_python.py python3.11 sample_exception.py python3.11 sample_pytorch.py python3.11 sample_npu_model.py python3.11 sample_multiple_model.py python3.11 sample_perf.py # Unset this environment variable to prevent affecting non-dflow test cases unset RESOURCE_CONFIG_PATH【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考