Move provider tests to onnxruntime_provider_test and enable use of plugin EPs#25689
Move provider tests to onnxruntime_provider_test and enable use of plugin EPs#25689
onnxruntime_provider_test and enable use of plugin EPs#25689Conversation
…) which doesn't exist
…viderFactoryForEpDevices() to new helper AddEpOptionsToSessionOptions()
This reverts commit 7d80c61.
…out a symbol not being found for OrtDevice::CPU. go figure.
…/test/optimizer to onnxruntime/test/util
… test. Thanks to Adrian for the suggestion.
onnxruntime_provider_test and enable use of plugin EPsonnxruntime_provider_test and enable use of plugin EPs
…rtvalue.h. can clean that up later.
|
Hey , just seeing this now @edgchen1 @snnn. The MIGraphX was using the pai_test_launcher.sh script in our CI so this has caused a build break for MIGraphX. We typically sync weekly to your Mainline and build against Onnxruntime to ensure MIGraphX EP builds off your main won't cause breaks. | Is there something else we should be using now here instead? Should we just run the test launcher directly? From what I can tell, it seems like the Onnxruntime_test_all binary still exists I think we just need to add a filter for excluded tests still? Is there a larger change here for builds/testing that we need to incorporate in our infrastructure? If so please let me know |
Sorry. I didn't find any existing usages in the repo, so I assumed it was fine to delete. You can add it back if you want. The main change is to move some tests from onnxruntime_test_all to a new test program, onnxruntime_provider_test. To get the same test coverage, you'd want to also run the new test program. You may need to adjust your test filters accordingly, e.g., if they match a test that got moved. |
|
Good to know. Sure I can add that back in but if I can just call in the same piece, I can adjust CI directly then if this is the case. |
|
I think this was used when there was MIGraphX EP/ROCm EP CI but that got removed recently and we're in the process of adding it back |
### Description Cherry-pick the following PRs into the ORT 1.23.1 branch: - Fix Attention GQA implementation on CPU - **MANUAL MERGE**: see #26057 - main merge date: Sept 15, 11:33am - pr: #25966 - commit: d530b29 - Address edge GetMemInfo edge cases - main merge date: Sept 16, 10:32am - pr: #26021 - commit: d251f3a - Implement new Python APIs - main merge date: Sept 17, 11:44am - pr: #25999 - commit: abc63e8 - MemcpyFromHost and MemcpyToHost support for plugin EPs - **MERGE CONFLICT** on file onnxruntime/test/optimizer/transpose_optimizer_test.cc. Conflicts with #25689 - main merge date: Sept 23, 10:42am - pr: #26088 - commit: 4545732 - [TRT RTX EP] Fix bug for generating the correct subgraph in GetCapability #26132 - main merge date: Sept 23, 8:54pm - pr: #26132 - commit: 72e56e7 ### Motivation and Context <!-- - Why is this change required? What problem does it solve? - If it fixes an open issue, please link to the issue here. --> --------- Co-authored-by: Dmitri Smirnov <yuslepukhin@users.noreply.github.com> Co-authored-by: Edward Chen <18449977+edgchen1@users.noreply.github.com> Co-authored-by: Chi Lo <54722500+chilo-ms@users.noreply.github.com>
* ORT 1.23.1 cherrypick 1 [REDO] (microsoft#26140) ### Description Cherry-pick the following PRs into the ORT 1.23.1 branch: - Fix Attention GQA implementation on CPU - **MANUAL MERGE**: see microsoft#26057 - main merge date: Sept 15, 11:33am - pr: microsoft#25966 - commit: d530b29 - Address edge GetMemInfo edge cases - main merge date: Sept 16, 10:32am - pr: microsoft#26021 - commit: d251f3a - Implement new Python APIs - main merge date: Sept 17, 11:44am - pr: microsoft#25999 - commit: abc63e8 - MemcpyFromHost and MemcpyToHost support for plugin EPs - **MERGE CONFLICT** on file onnxruntime/test/optimizer/transpose_optimizer_test.cc. Conflicts with microsoft#25689 - main merge date: Sept 23, 10:42am - pr: microsoft#26088 - commit: 4545732 - [TRT RTX EP] Fix bug for generating the correct subgraph in GetCapability microsoft#26132 - main merge date: Sept 23, 8:54pm - pr: microsoft#26132 - commit: 72e56e7 ### Motivation and Context <!-- - Why is this change required? What problem does it solve? - If it fixes an open issue, please link to the issue here. --> --------- Co-authored-by: Dmitri Smirnov <yuslepukhin@users.noreply.github.com> Co-authored-by: Edward Chen <18449977+edgchen1@users.noreply.github.com> Co-authored-by: Chi Lo <54722500+chilo-ms@users.noreply.github.com> * ORT 1.23.1 cherrypick 2 (microsoft#26182) ### Description Adds the following commits to the `rel-1.23.1` branch for ORT 1.23.1: - add session_id_ to LogEvaluationStart/Stop, LogSessionCreationStart - main merge date: July 31, 1:05am - pr: microsoft#25590 - commit: e753643 - [build] fix WebAssembly build on macOS/arm64 - main merge date: Aug 5, 8:07am - pr: microsoft#25653 - commit: 53f152b - [CPU] MoE Kernel (microsoft#25958) - main merge date: Sept 10, 4:54pm - pr: microsoft#25958 - commit: 930e640 - [CPU] Block-wise QMoE kernel for CPU - main merge date: Sept 15, 8:32am - pr: microsoft#26009 - commit: 5d17734 - [C#] Implement missing APIs - main merge date: Sept 24, 10:50am - pr: microsoft#26101 - commit: 35dcab5 - Regenerate test model with ONNX IR < 12 - main merge date: Sept 24, 2:50pm - pr: microsoft#26149 - commit: 88f2652 - [CPU] Fix compilation errors because of unused variables - main merge date: Sept 25, 1:21pm - pr: microsoft#26147 - commit: 42fcd71 - [EP ABI] Check if nodes specified in GetCapability() have already been assigned - main merge date: Sept 26, 1:24am - pr: microsoft#26156 - commit: 67d3ba0 - [QNN EP] Add dynamic option to set HTP performance mode - main merge date: Sept 26, 11:55am - pr: microsoft#26135 - commit: 6cc40fd --------- Co-authored-by: xieofxie <xieofxie@126.com> Co-authored-by: hualxie <hualxie@microsoft.com> Co-authored-by: Yulong Wang <7679871+fs-eire@users.noreply.github.com> Co-authored-by: Akshay Sonawane <111780983+apsonawane@users.noreply.github.com> Co-authored-by: Dmitri Smirnov <yuslepukhin@users.noreply.github.com> Co-authored-by: Edward Chen <18449977+edgchen1@users.noreply.github.com> Co-authored-by: quic-tirupath <quic_tirupath@quicinc.com> Co-authored-by: quic-ashwshan <quic_ashwshan@quicinc.com> --------- Co-authored-by: Adrian Lizarraga <adlizarraga@microsoft.com> Co-authored-by: Dmitri Smirnov <yuslepukhin@users.noreply.github.com> Co-authored-by: Edward Chen <18449977+edgchen1@users.noreply.github.com> Co-authored-by: Chi Lo <54722500+chilo-ms@users.noreply.github.com> Co-authored-by: xieofxie <xieofxie@126.com> Co-authored-by: hualxie <hualxie@microsoft.com> Co-authored-by: Yulong Wang <7679871+fs-eire@users.noreply.github.com> Co-authored-by: Akshay Sonawane <111780983+apsonawane@users.noreply.github.com> Co-authored-by: quic-tirupath <quic_tirupath@quicinc.com> Co-authored-by: quic-ashwshan <quic_ashwshan@quicinc.com>
Description
Move provider-specific unit tests that were formerly in
onnxruntime_test_allto a new test program,onnxruntime_provider_test. Notably, this includes the op tests which test different provider implementations.Enable some tests in
onnxruntime_provider_test(those usingModelTesterorOpTester) to use a plugin EP. The plugin EP usage is specified at runtime, so it is referred to as "dynamic". The dynamic plugin EP configuration can be specified with environment variableORT_UNIT_TEST_MAIN_DYNAMIC_PLUGIN_EP_CONFIG_JSON.This is an example value for
ORT_UNIT_TEST_MAIN_DYNAMIC_PLUGIN_EP_CONFIG_JSON. The test infrastructure will register the plugin EP library atpath/to/example_plugin_ep.dll. The op tests will use a plugin EP instance with the nameexample_ep.{ "ep_library_registration_name": "example_ep", "ep_library_path": "path/to/example_plugin_ep.dll", "selected_ep_name": "example_ep" }Motivation and Context
Enable use of plugin EPs in some provider-specific unit tests.
Notes for Reviewers
#includepath updates.