Update wgpu to 9c6ae1be (Wed Jul 31 2024)
Categories
(Core :: Graphics: WebGPU, task, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox131 | --- | fixed |
People
(Reporter: jimb, Assigned: jimb)
References
(Blocks 1 open bug)
Details
Attachments
(4 files, 3 obsolete files)
This import of wgpu trunk is going to require us to update the windows crate to version 0.58. I've been working actively with :glandium on this, and there are wrinkles which we're in the process of working out (bug 1910056 is a placeholder for one of the problems we ran into).
Updated•7 months ago
|
Updated•7 months ago
|
Updated•7 months ago
|
Assignee | ||
Comment 1•7 months ago
|
||
Add audits for the following, based on trusted author Kenny Kerr
- windows-implement
- windows-interface
- windows-result
- windows-strings
Update imports.lock accordingly.
Assignee | ||
Comment 2•7 months ago
|
||
Add delta audits up to:
- bit-set 0.8.0
- bit-vec 0.8.0
- d3d12 22.0.0
- gpu-allocator 0.27.0
- naga 22.0.0
- wgpu-core 22.0.0
- wgpu-hal 22.0.0
- wgpu-types 22.0.0
Updated•7 months ago
|
Updated•7 months ago
|
Comment hidden (obsolete) |
Assignee | ||
Updated•7 months ago
|
Assignee | ||
Comment 4•7 months ago
|
||
Remove unneeded delta audits from published crate version 0.20.0 to
git commit aeb2067e, which are no longer needed since we added delta
audits from 0.20.0 to 22.0.0, together with delta audits from 22.0.0
to the current wgpu trunk commit.
This removes audits for:
- d3d12
- naga
- wgpu-core
- wgpu-hal
- wgpu-types
Assignee | ||
Comment 5•7 months ago
|
||
Assignee | ||
Comment 6•7 months ago
|
||
Update the following crates in third_party/rust
to commit 9c6ae1be
from github.com/gfx-rs/wgpu
:
- d3d12
- naga
- wgpu-core
- wgpu-hal
- wgpu-types
Update the windows
Microsoft Windows binding crate to 0.58.
- Update
taskcluster/kinds/fetch/toolchains.yml
to request version
0.58 of thewindows
crate. - Update
build/rust/mozbuild/generate_buildconfig.py
and
toolkit/moz.configure
as needed. - Vendor the following new crates into
third_party/rust
:- windows-core
- windows-implement
- windows-interface
- windows-result
- windows-strings
Assignee | ||
Comment 7•7 months ago
|
||
Assignee | ||
Comment 8•7 months ago
•
|
||
New failures around countLeadingZeros
: EDIT: this is misleading. These error messages are correct WebGPU behavior, and have nothing to do with the failure, which seems to be a hang, since there's no output for five minutes in this stretch of the log:
[task 2024-08-02T21:13:09.109Z] 21:13:09 INFO - PID 18184 | [ERROR wgpu_core::device::global] Device::create_shader_module error:
[task 2024-08-02T21:13:09.109Z] 21:13:09 INFO - PID 18184 | Shader '' parsing error: expected global item ('struct', 'const', 'var', 'alias', ';', 'fn') or the end of the file, found 'enable'
[task 2024-08-02T21:13:09.109Z] 21:13:09 INFO - PID 18184 | ┌─ wgsl:1:1
[task 2024-08-02T21:13:09.111Z] 21:13:09 INFO - PID 18184 | │
[task 2024-08-02T21:13:09.111Z] 21:13:09 INFO - PID 18184 | 1 │ enable f16;
[task 2024-08-02T21:13:09.111Z] 21:13:09 INFO - PID 18184 | │ ^^^^^^ expected global item ('struct', 'const', 'var', 'alias', ';', 'fn') or the end of the file
[task 2024-08-02T21:18:49.599Z] 21:18:49 INFO - Got timeout in harness
[task 2024-08-02T21:18:49.606Z] 21:18:49 INFO - TEST-UNEXPECTED-TIMEOUT | /_mozilla/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countLeadingZeros/cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countLeadingZeros:float_argument:* | TestRunner hit external timeout (this may indicate a hang)
[task 2024-08-02T21:18:49.607Z] 21:18:49 INFO - TEST-INFO took 344321ms
Original error message that I was concerned about:
[task 2024-08-02T21:13:05.286Z] 21:13:05 INFO - TEST-START | /_mozilla/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countLeadingZeros/cts.https.html?q=webgpu:shader,validation,expression,call,builtin,countLeadingZeros:float_argument:*
[task 2024-08-02T21:13:05.340Z] 21:13:05 INFO - Setting pref dom.webgpu.enabled to true
[task 2024-08-02T21:13:05.358Z] 21:13:05 INFO - Setting pref dom.webgpu.workers.enabled to true
[task 2024-08-02T21:13:08.012Z] 21:13:08 INFO - PID 18184 | [ERROR wgpu_core::device::global] Device::create_shader_module error:
[task 2024-08-02T21:13:08.015Z] 21:13:08 INFO - PID 18184 | Shader '' parsing error: Cannot apply math function to type
[task 2024-08-02T21:13:08.015Z] 21:13:08 INFO - PID 18184 | ┌─ wgsl:2:12
[task 2024-08-02T21:13:08.015Z] 21:13:08 INFO - PID 18184 | │
[task 2024-08-02T21:13:08.015Z] 21:13:08 INFO - PID 18184 | 2 │ const v = countLeadingZeros(0.0);
[task 2024-08-02T21:13:08.023Z] 21:13:08 INFO - PID 18184 | │ ^^^^^^^^^^^^^^^^^ see msg
[task 2024-08-02T21:13:08.098Z] 21:13:08 INFO - PID 18184 | [ERROR wgpu_core::device::global] Device::create_shader_module error:
[task 2024-08-02T21:13:08.100Z] 21:13:08 INFO - PID 18184 | Shader '' parsing error: Cannot apply math function to type
[task 2024-08-02T21:13:08.100Z] 21:13:08 INFO - PID 18184 | ┌─ wgsl:2:12
[task 2024-08-02T21:13:08.101Z] 21:13:08 INFO - PID 18184 | │
[task 2024-08-02T21:13:08.102Z] 21:13:08 INFO - PID 18184 | 2 │ const v = countLeadingZeros(0.0f);
[task 2024-08-02T21:13:08.102Z] 21:13:08 INFO - PID 18184 | │ ^^^^^^^^^^^^^^^^^ see msg
[task 2024-08-02T21:13:08.192Z] 21:13:08 INFO - PID 18184 | [ERROR wgpu_core::device::global] Device::create_shader_module error:
[task 2024-08-02T21:13:08.192Z] 21:13:08 INFO - PID 18184 | Shader '' parsing error: expected global item ('struct', 'const', 'var', 'alias', ';', 'fn') or the end of the file, found 'enable'
[task 2024-08-02T21:13:08.196Z] 21:13:08 INFO - PID 18184 | ┌─ wgsl:1:1
[task 2024-08-02T21:13:08.197Z] 21:13:08 INFO - PID 18184 | │
[task 2024-08-02T21:13:08.198Z] 21:13:08 INFO - PID 18184 | 1 │ enable f16;
[task 2024-08-02T21:13:08.198Z] 21:13:08 INFO - PID 18184 | │ ^^^^^^ expected global item ('struct', 'const', 'var', 'alias', ';', 'fn') or the end of the file
Updated•7 months ago
|
Assignee | ||
Comment 9•7 months ago
|
||
I tried consolidating the removal of the 0.20.0 -> git
delta audits with the other audits, but that of course means that the resulting patch can't be landed in advance - the current sources are still using the old delta audit! Shoulda thought of that first, I guess.
Also, it seems that cargo 1.80 differs from 1.79 in the way cargo vendor
generates Cargo.toml
files, so there are a bunch of extraneous diffs that were getting introduced. It seems like rustup override set 1.79
and deleting the object directories fixed this.
Assignee | ||
Comment 10•7 months ago
|
||
The cargo vendor
issue seems to be behind failures like this.
Assignee | ||
Comment 11•7 months ago
|
||
I'm not able to reproduce the countLeadingZeros
hang/timeout/crash using the standalone WebGPU CTS test runner. Those error messages are expected (you can't apply countLeadingZeros
to floating-point values).
It may be the case that our lack of support for enable
is causing problems, but that should not be new with this wgpu
update.
Assignee | ||
Comment 12•7 months ago
•
|
||
Okay, I have a pass for that chip (webgpu7) now. So there's something intermittent here, unfortunately.
Comparing the run that timed out with the successful runs, it seems like all the tests did actually run and pass, but then something caused the browser to not exit when the test was done.
Assignee | ||
Comment 13•7 months ago
|
||
This command also works fine locally:
$ mach wpt /_mozilla/webgpu/cts/webgpu/shader/validation/expression/call/builtin/countLeadingZeros
Assignee | ||
Comment 14•7 months ago
|
||
:glandium has also asked me to rebase this on top of bug 1910056.
Updated•7 months ago
|
Updated•7 months ago
|
Updated•7 months ago
|
Assignee | ||
Comment 15•7 months ago
|
||
Update the windows
Microsoft Windows binding crate to 0.58.
- Update
taskcluster/kinds/fetch/toolchains.yml
to request version
0.58 of thewindows
crate. - Update
build/rust/windows/Cargo.toml
to present itself as 0.58. - Vendor the following new crates into
third_party/rust
:- windows-core
- windows-implement
- windows-interface
- windows-result
- windows-strings
- Update
supply-chain/imports.lock
as necessary.
Assignee | ||
Comment 16•7 months ago
|
||
Update the following crates in third_party/rust
to commit 9c6ae1be
from github.com/gfx-rs/wgpu
:
- d3d12
- naga
- wgpu-core
- wgpu-hal
- wgpu-types
Update dependencies:
- bit-set 0.8.0
- bit-vec 0.8.0
- gpu-allocator 0.27
Make necessary minor changes to gfx/wgpu_bindings
.
Add appropriate audits to supply-chain/audits.toml
.
Assignee | ||
Comment 17•7 months ago
•
|
||
Comment 18•7 months ago
|
||
Comment 19•7 months ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/fd438d9a787d
https://hg.mozilla.org/mozilla-central/rev/20d31e6ca59d
https://hg.mozilla.org/mozilla-central/rev/24d8bf09f020
https://hg.mozilla.org/mozilla-central/rev/b5f2558e6a60
Description
•