onnx-mlir

Logo

MLIR 編譯器基礎架構中 ONNX 模型的表示法和參考降階

在 GitHub 上檢視專案 onnx/onnx-mlir

操作指南

使用 Python 進行推論
使用 C/C++ 進行推論
使用 Java 進行推論

參考資料

ONNX 方言
OMTensor C99 執行期 API
OMTensorList C99 執行期 API
OMTensor Java 執行期 API
OMTensorList Java 執行期 API
產生 ONNX 方言
關於文件

開發

新增一個運算
測試指南
錯誤處理
命令列選項
儀器化
常數傳播
新增一個加速器

工具

工具

RunONNXModel.py
DocCheck

此專案由 onnx 維護

託管於 GitHub Pages — 主題由 orderedlist 提供

為 ONNX-MLIR 定義和使用命令列選項

命令列選項可用於變更 onnx-mlir 或 onnx-mlir-opt 的預設行為,並幫助使用者進行實驗、偵錯或效能調整。我們在 ONNX-MLIR 中基於 LLVM 提供的命令列實用程式實作了命令列。我們沒有使用 MLIR pass 類別定義 OptionListOption (請參閱討論)。

組織選項

請參閱 llvm 文件,了解如何定義選項的基本概念。在 ONNX-MLIR 中,選項被放入群組 (llvm::cl::OptionCategory)。onnx-mlir 的所有命令列選項都在 OnnxMlirOptions 群組中。

程式碼結構

命令列選項應放置在 src/Compiler/CompilerOptions.cpp 中,並在 src/Compiler/CompilerOptions.hpp 中宣告。

定義一個選項

定義轉換本地的選項

使用 MLIR 的 Pass 選項來配置 pass。