@@ -141,3 +141,31 @@ jobs:
141141 cd /onnxruntime_src/onnxruntime/test/python/transformers
142142 python test_cuda_plugin_ep.py
143143 "
144+
145+ # --- Run the CUDA plugin EP C++ GoogleTest binary ---
146+ # onnxruntime_provider_test is built into the artifact and links the plugin tests
147+ # (gated by ORT_UNIT_TEST_HAS_CUDA_PLUGIN_EP). These tests register the plugin .so via
148+ # GetSharedLibraryFileName("onnxruntime_providers_cuda_plugin"), which returns the
149+ # platform-specific filename without a directory component. Run from /build/Release/Release
150+ # so that filename resolves to the plugin .so built there.
151+ # The filter covers every CUDA plugin EP suite linked into this binary:
152+ # CudaPlugin* -> CudaPluginUserStreamGraphTest, CudaPluginArenaTest,
153+ # CudaPluginPartitioningTest, CudaPluginProfilingTest
154+ # CudaResourcePartitioning* -> CudaResourcePartitioningTest
155+ - name : Run CUDA Plugin EP C++ Tests
156+ run : |
157+ docker run --rm --gpus all \
158+ -v ${{ github.workspace }}:/onnxruntime_src \
159+ -v ${{ runner.temp }}/Release:/build/Release \
160+ -e NVIDIA_VISIBLE_DEVICES=all \
161+ ${{ steps.build_docker_image_step.outputs.full-image-name }} \
162+ bash -c "
163+ set -ex
164+ export PATH=/opt/python/cp312-cp312/bin:\$PATH
165+ # Make libcudart.so.13 (and the plugin's CUDA deps) findable; see note above.
166+ export LD_LIBRARY_PATH=/build/Release/Release:/usr/local/cuda-13.0/lib64:\${LD_LIBRARY_PATH:-}
167+
168+ cd /build/Release/Release
169+ ls -la onnxruntime_provider_test libonnxruntime_providers_cuda_plugin.so
170+ ./onnxruntime_provider_test --gtest_filter='CudaPlugin*:CudaResourcePartitioning*'
171+ "
0 commit comments