You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
From the main goal of productionizing a model's inference by building an inference .so to be called from a C++ program, I ran into operator-related errors while running onnx-mlir on an .onnx file I got from offline optimization done in the approach described here.
Then I noticed that the optimized .onnx has ops from the domain com.microsoft.nchwc, among which there is a ReorderOutput op that onnx-mlir does not recognize.
From here I have some questions about operator domains:
What are domains? Are they analogous to programming language namespaces? Are there or can there be 2 operators with the same name from different domains that behave differently so that identifying an op not just by the name but also by the domain is necessary?
What is the status of the com.microsoft.nchwc domain in the ONNX project? Is it considered third-party so that tools in the ONNX project (e.g. onnx-mlir) will not try to understand or process them? (onnx.defs.get_all_schemas_with_history() also has no op from com.microsoft.nchwc.)
In general how do you know which tools will support which op domains? In the case of onnx-mlir, I think the errors I got were ultimately due to unsupported operator/domain but the error message was a cryptic error: not ranked that led me to dig into the code.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
From the main goal of productionizing a model's inference by building an inference .so to be called from a C++ program, I ran into operator-related errors while running onnx-mlir on an .onnx file I got from offline optimization done in the approach described here.
Then I noticed that the optimized .onnx has ops from the domain com.microsoft.nchwc, among which there is a ReorderOutput op that onnx-mlir does not recognize.
From here I have some questions about operator domains:
onnx.defs.get_all_schemas_with_history()
also has no op from com.microsoft.nchwc.)error: not ranked
that led me to dig into the code.Beta Was this translation helpful? Give feedback.
All reactions