Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WebGPU devices are never destroyed? #784

Open
ben-clayton opened this issue Oct 18, 2021 · 1 comment
Open

WebGPU devices are never destroyed? #784

ben-clayton opened this issue Oct 18, 2021 · 1 comment
Assignees

Comments

@ben-clayton
Copy link
Contributor

As far as I can tell, WebGPU devices are never destroyed. There's a TODO in device_pool.ts for destroying a device:

// TODO: device.destroy()

If we're not destroying devices, we're not testing tear-down logic, which seems like a big thing to be missing right now.

It also seems that because we're not destroying the devices, the Device.lost promise will never be resolved or rejected.

DDoS pushed a commit to faro-oss/Dawn that referenced this issue Oct 20, 2021
These should always be resolved or rejected.
The Fatal() call, when a promise is not resolved or rejected, is currently disabled due to gpuweb/cts#784.

Bug: dawn:1123
Change-Id: Ie0e8ac187ad70be0fea41cd66956d0bfd9c53212
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/66821
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
@kainino0x
Copy link
Collaborator

We're not, and that's because we didn't have device destruction until recently. (Actually I'm not even sure whether it's completed yet.)

I have a draft of some tests for device destruction and Device.lost in #687 but haven't finished them.

@lokokung lokokung self-assigned this Jan 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants