mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-07-25 19:48:11 +00:00
Current TRT EP can support model which has nested control flow ops (multiple level subgraphs). But it fails at a case where the subgraph has outer scope value that is defined several levels up in the top-level graph, in this case, the outer scope value is the input of the top-level graph. The outer scope values are not properly handled during TRT EP's subgraph reconstruction stage and fails at `graph.resolve()`. The way ORT gets capability from EPs is a bottom-up approach meaning inner most subgraph gets handled first. TRT EP reconstructs each subgraph level by level and following modifications are made to fix the outer scope values issue: - `SetGraphOuterScopeValuesAndInputs()` and `SetAllGraphInputs()` are added to handle outer scope values and add those values as graph inputs if needed in order to make `graph.resolve()` happy. - Change to use `GetNodeArgIncludingParentGraphs` so that when creating the fused TRT node for some subgraphs in` Graph::CreateFusedSubGraphNode()`, it can get the NodeArgs for outer scope values from top-level graph. This PR fixes https://github.com/microsoft/onnxruntime/issues/16217 |
||
|---|---|---|
| .. | ||
| contrib_ops | ||
| dml_ops | ||
| extended_graph_edge.h | ||
| function.cc | ||
| function_container.h | ||
| function_impl.h | ||
| function_inliner.h | ||
| function_template.h | ||
| function_utils.cc | ||
| function_utils.h | ||
| graph.cc | ||
| graph_flatbuffers_utils.cc | ||
| graph_flatbuffers_utils.h | ||
| graph_proto_serializer.cc | ||
| graph_proto_serializer.h | ||
| graph_utils.cc | ||
| graph_utils.h | ||
| graph_viewer.cc | ||
| model.cc | ||
| model.h | ||
| model_load_utils.h | ||
| node_attr_utils.cc | ||
| node_attr_utils.h | ||
| onnx_protobuf.h | ||
| op.cc | ||
| op.h | ||
| op_identifier.h | ||
| op_identifier_utils.cc | ||
| op_identifier_utils.h | ||
| ort_format_load_options.h | ||
| record.h | ||
| runtime_optimization_record.h | ||
| runtime_optimization_record_container.cc | ||
| runtime_optimization_record_container.h | ||
| schema_registry.cc | ||