
樣例使用指導【免費下載鏈接】geGEGraph Engine是面向昇騰的圖編譯器和執行器提供了計算圖優化、多流并行、內存復用和模型下沉等技術手段加速模型執行效率減少模型內存占用。 GE 提供對 PyTorch、TensorFlow 前端的友好接入能力并同時支持 onnx、pb 等主流模型格式的解析與編譯。項目地址: https://gitcode.com/cann/ge1、功能描述本樣例使用NZ數據格式對transformer進行構圖旨在幫助構圖開發者快速上手關于es的構圖方式2、目錄結構cpp/ ├── src/ | └── CMakeLists.txt // CMake構建文件 | └── es_showcase.h // 頭文件 | └── make_transformer_nz_graph.cpp // sample文件 ├── CMakeLists.txt // CMake構建文件 ├── main.cpp // 程序主入口 ├── README.md // README文件 ├── run_sample.sh // 執行腳本 ├── utils.h // 工具文件3、使用方法3.1、準備cann包通過安裝指導 環境準備正確安裝toolkit和ops包設置環境變量 (假設包安裝在/usr/local/Ascend/)source /usr/local/Ascend/cann/set_env.sh3.2、編譯和執行只需運行下述命令即可完成清理、生成接口、構圖和DUMP圖bash run_sample.sh當前 run_sample.sh 的行為是先自動清理舊的 build構建 sample并默認執行sample dump 。當看到如下信息代表執行成功[Success] sample 執行成功pbtxt dump 已生成在當前目錄。該文件以 ge_onnx_ 開頭可以在 netron 中打開顯示輸出文件說明執行成功后會在當前目錄生成以下文件ge_onnx_*.pbtxt- 圖結構的protobuf文本格式可用netron查看構建圖并執行除了基本的圖構建和dump功能外esb_sample還支持構建圖并實際執行計算。bash run_sample.sh -t sample_and_run該命令會自動生成ES接口編譯sample程序生成dump圖、運行圖并輸出計算結果執行成功后會看到[Success] sample_and_run 執行成功pbtxt和data輸出dump 已生成在當前目錄可通過data文件查看計算結果3.3、日志打印可執行程序執行過程中如果需要日志打印來輔助定位可以在bash run_sample.sh之前設置如下環境變量來讓日志打印到屏幕export ASCEND_SLOG_PRINT_TO_STDOUT1 #日志打印到屏幕 export ASCEND_GLOBAL_LOG_LEVEL0 #日志級別為debug級別3.4、圖編譯流程中DUMP圖可執行程序執行過程中如果需要DUMP圖來輔助定位圖編譯流程可以在 bash run_sample.sh -t sample_and_run 之前設置如下環境變量來DUMP圖到執行路徑下export DUMP_GE_GRAPH24、核心概念介紹4.1、構圖步驟如下創建圖構建器(用于提供構圖所需的上下文、工作空間及構建相關方法)添加起始節點(起始節點指無輸入依賴的節點通常包括圖的輸入(如 Data 節點)和權重常量(如 Const 節點))添加中間節點(中間節點為具有輸入依賴的計算節點通常由用戶構圖邏輯生成并通過已有節點作為輸入連接)設置圖輸出(明確圖的輸出節點作為計算結果的終點)4.2、NZ數據格式的說明NZ數據格式是昇騰親和的數據格式在昇騰AI處理器上計算效率更高通常比ND格式性能更好。關于NZ數據格式的詳細說明請參考昇騰官網說明數據排布格式【免費下載鏈接】geGEGraph Engine是面向昇騰的圖編譯器和執行器提供了計算圖優化、多流并行、內存復用和模型下沉等技術手段加速模型執行效率減少模型內存占用。 GE 提供對 PyTorch、TensorFlow 前端的友好接入能力并同時支持 onnx、pb 等主流模型格式的解析與編譯。項目地址: https://gitcode.com/cann/ge創作聲明:本文部分內容由AI輔助生成(AIGC),僅供參考