[webkit-changes] [WebKit/WebKit] af82bf: WebGPU: Compute passes

mwyrzykowski noreply at github.com
Tue Jan 31 10:55:20 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: af82bfdea3946b9862c5291ac5ef1c301c31e5e4
      https://github.com/WebKit/WebKit/commit/af82bfdea3946b9862c5291ac5ef1c301c31e5e4
  Author: Mike Wyrzykowski <mwyrzykowski at apple.com>
  Date:   2023-01-31 (Tue, 31 Jan 2023)

  Changed paths:
    M Source/WebGPU/WebGPU/BindGroupLayout.h
    M Source/WebGPU/WebGPU/BindGroupLayout.mm
    M Source/WebGPU/WebGPU/CommandEncoder.mm
    M Source/WebGPU/WebGPU/ComputePassEncoder.h
    M Source/WebGPU/WebGPU/ComputePassEncoder.mm
    M Source/WebGPU/WebGPU/ComputePipeline.h
    M Source/WebGPU/WebGPU/ComputePipeline.mm
    M Source/WebGPU/WebGPU/Device.h
    M Source/WebGPU/WebGPU/RenderPipeline.mm

  Log Message:
  -----------
  WebGPU: Compute passes
https://bugs.webkit.org/show_bug.cgi?id=250863
<radar://83213548>

Reviewed by Myles C. Maxfield.

Implement compute passes which are needed to start
passing a lot of the CTS tests which create a simple
compute shader and read back the result, to ensure
the adapter was created.

https://bugs.webkit.org/show_bug.cgi?id=251171 has
been filed for tracking getting the threads per thread
group size from the shader compiler.

* Source/WebGPU/WebGPU/CommandEncoder.mm:
(WebGPU::CommandEncoder::beginComputePass):
(WebGPU::CommandEncoder::beginRenderPass):

* Source/WebGPU/WebGPU/ComputePassEncoder.h:
* Source/WebGPU/WebGPU/ComputePassEncoder.mm:
(WebGPU::ComputePassEncoder::dispatch):
(WebGPU::ComputePassEncoder::dispatchIndirect):
(WebGPU::ComputePassEncoder::setBindGroup):
(WebGPU::ComputePassEncoder::setPipeline):
(WebGPU::ComputePassEncoder::endPass):

* Source/WebGPU/WebGPU/BindGroupLayout.h:
* Source/WebGPU/WebGPU/BindGroupLayout.mm:
(WebGPU::BindGroupLayout::createEntryFromStructMember):
Moved so both compute and render pipeline can access.

* Source/WebGPU/WebGPU/ComputePipeline.h:
(WebGPU::ComputePipeline::create):
(WebGPU::ComputePipeline::threadsPerThreadgroup const):

* Source/WebGPU/WebGPU/Device.h:
(WebGPU::Device::buildKeyValueReplacements const):
Moved to common path.

* Source/WebGPU/WebGPU/RenderPipeline.mm:
(WebGPU::Device::createRenderPipeline):
(WebGPU::RenderPipeline::getBindGroupLayout):
(WebGPU::buildKeyValueReplacements): Deleted.
(WebGPU::createEntryFromStructMember): Deleted.
Moved to common path.

Canonical link: https://commits.webkit.org/259634@main




More information about the webkit-changes mailing list