Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: f915246e31c3594167be28c244e9790100234ecc
https://github.com/WebKit/WebKit/commit/f915246e31c3594167be28c244e9790100234ecc
Author: Mike Wyrzykowski <[email protected]>
Date: 2023-11-06 (Mon, 06 Nov 2023)
Changed paths:
M
LayoutTests/http/tests/webgpu/webgpu/api/operation/command_buffer/programmable/state_tracking-expected.txt
M
LayoutTests/http/tests/webgpu/webgpu/api/operation/memory_sync/buffer/multiple_buffers-expected.txt
M
LayoutTests/http/tests/webgpu/webgpu/api/operation/memory_sync/buffer/single_buffer-expected.txt
M
LayoutTests/http/tests/webgpu/webgpu/api/operation/memory_sync/texture/same_subresource-expected.txt
M LayoutTests/platform/mac-wk2/TestExpectations
M Source/WebGPU/WebGPU/RenderBundle.h
M Source/WebGPU/WebGPU/RenderBundle.mm
M Source/WebGPU/WebGPU/RenderBundleEncoder.h
M Source/WebGPU/WebGPU/RenderBundleEncoder.mm
M Source/WebGPU/WebGPU/RenderPassEncoder.mm
Log Message:
-----------
[WebGPU] GPURenderBundleEncoder.drawIndirect and
GPURenderBundleEncoder.drawIndexedIndirect have synchronization issues
https://bugs.webkit.org/show_bug.cgi?id=264213
<radar://117948947>
Reviewed by Dan Glastonbury.
RenderBundleEncoder supports drawIndirect and drawIndexedIndirect but
MTLIndirectRenderCommand does not. Initially this was implemented by directly
reading the contents property of the indirect buffer, however that has
synchronization
issues if the buffer is encoded in a copyBufferToBuffer command or similar.
Eventually we would like to build the ICBs via a compute kernel, as noted in
https://bugs.webkit.org/show_bug.cgi?id=264219.
However, until https://bugs.webkit.org/show_bug.cgi?id=264219 is implemented we
will
support RenderBundles via command replay to avoid the synchronization issues
described.
This also allows all the memory_sync tests to pass, so enable them.
*
LayoutTests/http/tests/webgpu/webgpu/api/operation/memory_sync/buffer/multiple_buffers-expected.txt:
*
LayoutTests/http/tests/webgpu/webgpu/api/operation/memory_sync/buffer/single_buffer-expected.txt:
*
LayoutTests/http/tests/webgpu/webgpu/api/operation/memory_sync/texture/same_subresource-expected.txt:
* LayoutTests/platform/mac-wk2/TestExpectations:
* Source/WebGPU/WebGPU/RenderBundleEncoder.mm:
(WebGPU::RenderBundleEncoder::addResource):
(WebGPU::RenderBundleEncoder::drawIndexedIndirect):
(WebGPU::RenderBundleEncoder::drawIndirect):
*
LayoutTests/http/tests/webgpu/webgpu/api/operation/command_buffer/programmable/state_tracking-expected.txt:
Canonical link: https://commits.webkit.org/270311@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes