-
Notifications
You must be signed in to change notification settings - Fork 3.5k
Open
Labels
WebNNWebNN on top of onnxruntimeWebNN on top of onnxruntimeep:WebNNWebNN execution providerWebNN execution provider
Description
Describe the issue
Fail to run below WebNN batchNormalization tests due to tolerance issues by ORT default CPU EP.
| Test | Error message |
|---|---|
| batchNormalization float32 2D tensor (mean and variance are non-constant) default options | assert_less_than_equal: assert_array_approx_equals_ulp: test batchNormalization float32 actual 1.8526287078857422 should be close enough to expected 1.8526301383972168 by ULP distance: expected a number less than or equal to 6n but got 12n |
| batchNormalization float32 2D constant tensors default options | assert_less_than_equal: assert_array_approx_equals_ulp: test batchNormalization float32 actual 1.8526287078857422 should be close enough to expected 1.8526301383972168 by ULP distance: expected a number less than or equal to 6n but got 12n |
| batchNormalization float32 2D tensor default options | assert_less_than_equal: assert_array_approx_equals_ulp: test batchNormalization float32 actual 1.8526287078857422 should be close enough to expected 1.8526301383972168 by ULP distance: expected a number less than or equal to 6n but got 12n |
| [optional] batchNormalization default + relu | assert_less_than_equal: assert_array_approx_equals_ulp: test batchNormalization relu float32 actual 1.8526287078857422 should be close enough to expected 1.8526301383972168 by ULP distance: expected a number less than or equal to 6n but got 12n |
| [optional] batchNormalization default + leakyRelu | assert_less_than_equal: assert_array_approx_equals_ulp: test batchNormalization leakyRelu float32 actual 1.8526287078857422 should be close enough to expected 1.8526301383972168 by ULP distance: expected a number less than or equal to 7n but got 12n |
| [optional] batchNormalization default + clamp | assert_less_than_equal: assert_array_approx_equals_ulp: test batchNormalization clamp float32 actual 1.8526287078857422 should be close enough to expected 1.8526301383972168 by ULP distance: expected a number less than or equal to 6n but got 12n |
| [optional] batchNormalization default + prelu | assert_less_than_equal: assert_array_approx_equals_ulp: test batchNormalization prelu float32 actual 1.8526287078857422 should be close enough to expected 1.8526301383972168 by ULP distance: expected a number less than or equal to 7n but got 12n |
| [required] batchNormalization options.axis=0 + gelu | assert_less_than_equal: assert_array_approx_equals_ulp: test batchNormalization gelu float32 actual -0.035951320081949234 should be close enough to expected -0.03595117852091789 by ULP distance: expected a number less than or equal to 24n but got 38n |
| [optional] batchNormalization default + hardSwish | assert_less_than_equal: assert_array_approx_equals_ulp: test batchNormalization hardSwish float32 actual 1.4983532428741455 should be close enough to expected 1.4983549118041992 by ULP distance: expected a number less than or equal to 10n but got 14n |
| [optional] batchNormalization default + linear | assert_less_than_equal: assert_array_approx_equals_ulp: test batchNormalization linear float32 actual 1.8526287078857422 should be close enough to expected 1.8526301383972168 by ULP distance: expected a number less than or equal to 8n but got 12n |
/cc @fdwr PTAL, thanks!
To reproduce
- Install Windows App SDK Stable 1.8.2 (1.8.251003001)
- Install lates Edge Canary browser
- Launch Edge Canary browser, navigate to
about://flagsenabled "Enables WebNN API" and "ONNX Runtime backend for WebNN" flags, then relaunch browser - Run each failure test using below test url
Urgency
No response
ONNX Runtime Installation
Released Package Windows App SDK Stable 1.8.2 (1.8.251003001)
ONNX Runtime Version or Commit ID
1.23.25.928
Execution Provider
ORT default CPU EP
Metadata
Metadata
Assignees
Labels
WebNNWebNN on top of onnxruntimeWebNN on top of onnxruntimeep:WebNNWebNN execution providerWebNN execution provider