commit | 7f728fcec16b18c8e5cd215c4e5bb76f2e6d9a35 | [log] [tgz] |
---|---|---|
author | Brandon Jones <bajones@chromium.org> | Tue Aug 08 00:11:27 2023 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Aug 08 00:11:27 2023 +0000 |
tree | bf9f28cb31f5e52791ca4a7d54f05b96e9a3ccfb | |
parent | 47e3312658e36fde6dc8b931cf2ce104c3b46e97 [diff] |
Split Vulkan command buffers on compute pass This is a further generalization of the workaround added for dawn:1564. It splits the command buffer on Qualcomm GPUs any time a compute pass follows a render pass in a single command buffer. This feels like a farily heavy-handed workaround, but where previously it seemed like the crash only happened if the compute pass used attachements from the render pass, I'm now seeing some scenarios where the compute pass shares no resources with the render pass and still fails unless the command buffer is split. Fortunately the broadening of scope allows the code to be simpler and removes the need to track and check render pass attachements. Bug: dawn:1897 Change-Id: I2c511a22e745ee5804d46337cb52483c009a200e Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/144780 Reviewed-by: Kai Ninomiya <kainino@chromium.org> Commit-Queue: Brandon Jones <bajones@chromium.org> Kokoro: Kokoro <noreply+kokoro@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.