Title: [244406] trunk
- Revision
- 244406
- Author
- justin_...@apple.com
- Date
- 2019-04-17 15:51:21 -0700 (Wed, 17 Apr 2019)
Log Message
[Web GPU] GPUComputePassEncoder::dispatch number of thread groups, not grid size
https://bugs.webkit.org/show_bug.cgi?id=196984
Reviewed by Myles C. Maxfield.
Source/WebCore:
Test: Updated compute-squares.html.
* platform/graphics/gpu/cocoa/GPUComputePassEncoderMetal.mm:
(WebCore::GPUComputePassEncoder::dispatch):
LayoutTests:
* webgpu/compute-squares.html: One thread group is enough to process the data in a single pass.
Modified Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (244405 => 244406)
--- trunk/LayoutTests/ChangeLog 2019-04-17 22:47:07 UTC (rev 244405)
+++ trunk/LayoutTests/ChangeLog 2019-04-17 22:51:21 UTC (rev 244406)
@@ -1,3 +1,12 @@
+2019-04-17 Justin Fan <justin_...@apple.com>
+
+ [Web GPU] GPUComputePassEncoder::dispatch number of thread groups, not grid size
+ https://bugs.webkit.org/show_bug.cgi?id=196984
+
+ Reviewed by Myles C. Maxfield.
+
+ * webgpu/compute-squares.html: One thread group is enough to process the data in a single pass.
+
2019-04-17 John Wilander <wilan...@apple.com>
Add prioritization of ad click conversions and cleaning of sent ad click conversions
Modified: trunk/LayoutTests/webgpu/compute-squares.html (244405 => 244406)
--- trunk/LayoutTests/webgpu/compute-squares.html 2019-04-17 22:47:07 UTC (rev 244405)
+++ trunk/LayoutTests/webgpu/compute-squares.html 2019-04-17 22:51:21 UTC (rev 244406)
@@ -58,7 +58,8 @@
passEncoder.setPipeline(pipeline);
- passEncoder.dispatch(data.length, 1, 1);
+ // One thread group.
+ passEncoder.dispatch(1, 1, 1);
passEncoder.endPass();
device.getQueue().submit([commandEncoder.finish()]);
Modified: trunk/Source/WebCore/ChangeLog (244405 => 244406)
--- trunk/Source/WebCore/ChangeLog 2019-04-17 22:47:07 UTC (rev 244405)
+++ trunk/Source/WebCore/ChangeLog 2019-04-17 22:51:21 UTC (rev 244406)
@@ -1,3 +1,15 @@
+2019-04-17 Justin Fan <justin_...@apple.com>
+
+ [Web GPU] GPUComputePassEncoder::dispatch number of thread groups, not grid size
+ https://bugs.webkit.org/show_bug.cgi?id=196984
+
+ Reviewed by Myles C. Maxfield.
+
+ Test: Updated compute-squares.html.
+
+ * platform/graphics/gpu/cocoa/GPUComputePassEncoderMetal.mm:
+ (WebCore::GPUComputePassEncoder::dispatch):
+
2019-04-17 Andy Estes <aes...@apple.com>
[iOS] Support multiple file selection in UIDocumentPickerViewController
Modified: trunk/Source/WebCore/platform/graphics/gpu/cocoa/GPUComputePassEncoderMetal.mm (244405 => 244406)
--- trunk/Source/WebCore/platform/graphics/gpu/cocoa/GPUComputePassEncoderMetal.mm 2019-04-17 22:47:07 UTC (rev 244405)
+++ trunk/Source/WebCore/platform/graphics/gpu/cocoa/GPUComputePassEncoderMetal.mm 2019-04-17 22:51:21 UTC (rev 244406)
@@ -96,14 +96,17 @@
ASSERT(pipelineState);
BEGIN_BLOCK_OBJC_EXCEPTIONS;
- // FIXME: This should be gleaned from the shader if not using MSL. For now, use the docs' example calculation.
+
auto w = pipelineState.threadExecutionWidth;
auto h = pipelineState.maxTotalThreadsPerThreadgroup / w;
+
+ // FIXME: This should be gleaned from the shader if not using MSL. For now, use the docs' example calculation.
auto threadsPerThreadgroup = MTLSizeMake(w, h, 1);
- auto threadgroupsPerGrid = MTLSizeMake((x + w - 1) / w, (y + h - 1) / h, z);
+ auto threadgroupsPerGrid = MTLSizeMake(x, y, z);
[m_platformComputePassEncoder dispatchThreadgroups:threadgroupsPerGrid threadsPerThreadgroup:threadsPerThreadgroup];
+
END_BLOCK_OBJC_EXCEPTIONS;
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes