onnxruntime
0614f48d - Fix WebGPU Conv2dMM input indexing for vec3 channels (#33432)

Commit
16 days ago
Fix WebGPU Conv2dMM input indexing for vec3 channels (#33432) ### Description Conv2dMM assembles vec3 inputs from scalar storage but divided the channel coordinate by four. This read the wrong channels for input counts such as 6, 9, and 15. Use the scalar storage coordinate for this path. Add FP32/FP16 regression tests with dynamic and initializer weights, plus 3-channel, scalar, and vec4 controls. ### Motivation and Context Fixes #32928. The attached nine-channel model still reproduces the reported error on current main. Three-channel inputs hide the bug because their starting channel is always zero. ### Validation - Windows/D3D12 Release build and lint pass. - `onnxruntime_provider_test --gtest_filter=*Conv2dMMInputChannelsTest*`: 28 passed, no skips; 12 cases failed before the fix. - Attachment maximum error versus CPU drops from 0.6985353082 to 1.788e-7. Profiling confirms WebGPU Conv with CPU fallback disabled. - macOS Metal was not tested.
Author
Parents
Loading