|author||Corentin Wallez <email@example.com>||Tue Jun 16 09:17:48 2020 +0000|
|committer||Commit Bot service account <firstname.lastname@example.org>||Tue Jun 16 09:17:48 2020 +0000|
Reland: Vulkan: Enforce fixed subgroup size for compute shaders. Reland after a refactor of how the extension handling work in the Vulkan backend. The original author is David Turner <email@example.com>. This CL ensures that, on architectures with a varying subgroup size, compute shaders are always compiled with a fixed subgroup size to avoid consistency issues when one shader writes data in a subgroup-size dependent layout to GPU memory, to be read by another shader in a future dispatch. At the moment, only Intel ICDs are known to implement this , and the code uses a heuristics to chose the size of 16, which seems to be the sweet spot according to Intel engineers. + Update the PNextChainBuilder class to deal with the fact that VkComputePipelineCreateInfo::pNext is defined as a const void*, which created compiler errors in the previous implementation.  https://bugs.freedesktop.org/show_bug.cgi?id=108875 Bug: dawn:464 Change-Id: I035ee06084fcc964742f0bff4c54cff257c742ae Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/23202 Commit-Queue: Corentin Wallez <firstname.lastname@example.org> Reviewed-by: Austin Eng <email@example.com> Reviewed-by: Stephen White <firstname.lastname@example.org>
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.hversion that Dawn implements.
User documentation: (TODO, figure out what overlaps with webgpu.h docs)
Apache 2.0 Public License, please see LICENSE.
This is not an officially supported Google product.