onnxruntime
4576ea19 - [WebGPU] Add robustness provider option (#31971)

Commit
57 days ago
[WebGPU] Add robustness provider option (#31971) ### Description - Adds the WebGPU enableRobustness provider option to control Dawn robust buffer access for ORT-created devices. - Exposes the boolean option through the shared JavaScript type surface for the native Node.js WebGPU binding. - Keeps robustness independent from validationMode and preserves build-specific defaults: enabled in Debug, disabled in Release and RelWithDebInfo. - Handles the process-global WebGPU device lifecycle: the first created device establishes the value; later conflicts and requests for external devices are ignored with a warning. - Does not forward the option through browser/WASM WebGPU, where standard WebGPU APIs cannot configure Dawn toggle chains. - Adds focused native coverage for explicit values, defaults, invalid input, validation independence, conflicts, compile-only contexts, and external devices. ### Motivation and Context Dawn buffer robustness is a device-creation setting that is separate from validation. ONNX Runtime previously enabled Dawn's disable_robustness toggle unconditionally, so native users could not request robust buffer access or configure the safety/performance tradeoff independently. This change exposes that choice for native WebGPU device creation while making the shared-device behavior explicit. It keeps the performance-oriented non-Debug default and enables the safer Debug default. ### Testing - build\Windows\Release\Release\onnxruntime_provider_test.exe --gtest_filter=WebGpuContextTest.* (8 tests passed) - npm run prebuild --prefix js/web - npx prettier --check common/lib/inference-session.ts web/lib/wasm/session-options.ts web/test/test-types.ts
Author
Parents
Loading