commit | 82eadb32af6827abc1bda78e5f9ebcce5979bfea | [log] [tgz] |
---|---|---|
author | Lokbondo Kung <lokokung@google.com> | Thu May 01 16:46:15 2025 -0700 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Thu May 01 16:46:15 2025 -0700 |
tree | c2e1f292d1ecf5478cb67d2896c5d7daa8ed07af | |
parent | efbfce34b440b2de0208e59f30cd918622c33fc0 [diff] |
[dawn][native] Adds task tracking in ExecutionQueueBase. - Implements the necessary tools in ExecutionQueueBase as described in the [design doc](https://docs.google.com/document/d/1o_1SvkpnWq0ysOxU5jJLkWKjBrLG5eUHqmWQSjQiu2s/edit?usp=sharing). - Uses WeakRefs for Queue based events to avoid ref-cycle of QueueBase -[implements]-> ExecutionQueueBase -[owns]-> Task -[refs]-> TrackedEvent -[refs]-> QueueBase - Much of the task tracking is based on the CallbackTaskManager which we can hopefully remove once more refactoring is done. - Introduces a mechanism for the backend to proactively update the completed serial while also tracking queue event futures. This way, when the backend notifies that a particular serial is passed, we can flush all future callbacks up to that serial. - Ensure that once the instance is dropped, all non-spontaneous event callbacks are called. - Disables some Spontaneous tests since they won't work anymore now that we are in the middle of implementing the infra to enable AllowSpontaneous. Bug: 412761228 Change-Id: I1650ab2ef1fa60837553d7bd3a5f6e0b4e7ad3b7 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/239115 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Kai Ninomiya <kainino@chromium.org> Commit-Queue: Loko Kung <lokokung@google.com>
Dawn is an open-source and cross-platform implementation of the WebGPU standard. More precisely it implements webgpu.h
that is a one-to-one mapping with the WebGPU IDL. Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
Dawn provides several WebGPU building blocks:
webgpu.h
version that Dawn implements.webgpu.h
.Helpful links:
Developer documentation:
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.