commit | 0e3d4fcbd47b12eabc573cd4be28007c27df3548 | [log] [tgz] |
---|---|---|
author | Ben Clayton <bclayton@google.com> | Tue Oct 19 18:42:29 2021 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Oct 19 18:42:29 2021 +0000 |
tree | 9e9c73a6fc8d43ad4b9bf0f807b0b9301904ab1a | |
parent | 89a7736bcfbfdfd57a961d4606d35cc21e4b559c [diff] |
dawn_node: Prevent setImmediate() being queued multiple times The AsyncRunner will enqueue a call to `Device::Tick()` when the runner count moves from 0 async tasks to 1. It has been observed that some 'async' tasks are actually synchronious, which results in multiple tick callbacks being enqueued before the first has a chance to run. Fix this by using another boolean to track whether the function has been queued. Bug: dawn:1127 Change-Id: I7dd81d33d601bf1d3cefb5c4dad6c237883e51ee Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/66820 Auto-Submit: Ben Clayton <bclayton@google.com> Reviewed-by: Antonio Maiorano <amaiorano@google.com> Commit-Queue: Ben Clayton <bclayton@google.com>
Dawn is an open-source and cross-platform implementation of the work-in-progress 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)
(TODO)
Apache 2.0 Public License, please see LICENSE.
This is not an officially supported Google product.