D3D11: Create shader objects asynchronously. This change makes the creation of D3D11 shader objects (ID3D11VertexShader, etc.) asynchronous. Currently, these objects must be ready when a pipeline is used for command buffer encoding. However, they are only strictly needed when the command buffer is submitted. By deferring the creation until submission, this change avoids blocking the encoding thread if the shader takes a long time to be created. This allows for more ample time for shader creation to happen in parallel with command recording. Bug: 439845637, chromium:40266176 Change-Id: Ib5c678bdcf5218d941214db46aa6b5b236bace46 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/270015 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org> Auto-Submit: Quyen Le <lehoangquyen@chromium.org>
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.