Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(875)

Issue 2786103003: Add half-float IOSurface GpuMemoryBuffer support (Closed)

Created:
3 years, 8 months ago by ccameron
Modified:
3 years, 8 months ago
CC:
Aaron Boodman, abarth-chromium, cc-bugs_chromium.org, chromium-reviews, darin (slow to review), darin-cc_chromium.org, jam, mac-reviews_chromium.org, piman+watch_chromium.org, qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Add half-float IOSurface GpuMemoryBuffer support Add support for gpu rasterization to half-float RGBA textures. Do not add software rasterization support for half-float RGBA textures. While this is possible, software rasterization to half-float is not a good idea for performance reasons. BUG=655171 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Review-Url: https://codereview.chromium.org/2786103003 Cr-Commit-Position: refs/heads/master@{#464114} Committed: https://chromium.googlesource.com/chromium/src/+/c1fcde58c22a5825c44cbad17eb3ed84b8c2bcce

Patch Set 1 #

Patch Set 2 : Re-add software support #

Total comments: 6

Patch Set 3 : Fix switch #

Total comments: 2

Patch Set 4 : Rename IsGpuMemoryBufferFormatSupported, fix sw impl #

Total comments: 2

Patch Set 5 : Review feedback #

Unified diffs Side-by-side diffs Delta from patch set Stats (+124 lines, -41 lines) Patch
M cc/raster/raster_buffer_provider.cc View 1 2 3 4 2 chunks +1 line, -1 line 0 comments Download
M cc/resources/resource_format.cc View 1 chunk +2 lines, -1 line 0 comments Download
M cc/resources/resource_provider.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M components/exo/buffer.cc View 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/gpu/gpu_internals_ui.cc View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M gpu/command_buffer/common/gpu_memory_buffer_support.h View 1 2 3 4 1 chunk +3 lines, -2 lines 0 comments Download
M gpu/command_buffer/common/gpu_memory_buffer_support.cc View 1 2 3 4 chunks +7 lines, -2 lines 0 comments Download
M gpu/command_buffer/tests/gl_gpu_memory_buffer_unittest.cc View 1 4 chunks +21 lines, -1 line 0 comments Download
M gpu/ipc/client/command_buffer_proxy_impl.cc View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
M gpu/ipc/client/gpu_memory_buffer_impl_shared_memory.cc View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/ipc/common/gpu_memory_buffer_support.cc View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/ipc/host/gpu_memory_buffer_support.cc View 1 chunk +5 lines, -9 lines 0 comments Download
M gpu/ipc/in_process_command_buffer.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M gpu/ipc/service/gpu_command_buffer_stub.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M ui/gfx/buffer_format_util.cc View 5 chunks +19 lines, -16 lines 0 comments Download
M ui/gfx/buffer_types.h View 1 chunk +1 line, -0 lines 0 comments Download
M ui/gfx/mac/io_surface.cc View 2 chunks +5 lines, -0 lines 0 comments Download
M ui/gfx/mojo/buffer_types.mojom View 1 chunk +1 line, -0 lines 0 comments Download
M ui/gfx/mojo/buffer_types_struct_traits.h View 2 chunks +5 lines, -0 lines 0 comments Download
M ui/gl/gl_image_io_surface.mm View 1 2 3 4 chunks +6 lines, -0 lines 0 comments Download
M ui/gl/gl_image_io_surface_unittest.cc View 1 chunk +3 lines, -1 line 0 comments Download
M ui/gl/gl_image_memory.cc View 1 2 3 7 chunks +9 lines, -0 lines 0 comments Download
M ui/gl/gl_image_native_pixmap.cc View 3 chunks +3 lines, -0 lines 0 comments Download
M ui/gl/test/gl_image_test_support.cc View 2 chunks +20 lines, -0 lines 0 comments Download

Messages

Total messages: 42 (30 generated)
ccameron
ptal -- this will eventually be needed for wide-color and HDR on Mac. For the ...
3 years, 8 months ago (2017-03-30 21:04:43 UTC) #11
Daniele Castagna
Would it make sense in the future to add a shared memory implementation of half ...
3 years, 8 months ago (2017-03-30 21:47:10 UTC) #14
ccameron
https://codereview.chromium.org/2786103003/diff/20001/cc/raster/raster_buffer_provider.cc File cc/raster/raster_buffer_provider.cc (left): https://codereview.chromium.org/2786103003/diff/20001/cc/raster/raster_buffer_provider.cc#oldcode30 cc/raster/raster_buffer_provider.cc:30: case RGBA_F16: On 2017/03/30 21:47:10, Daniele Castagna wrote: > ...
3 years, 8 months ago (2017-03-30 23:07:03 UTC) #16
Daniele Castagna
https://codereview.chromium.org/2786103003/diff/20001/cc/raster/raster_buffer_provider.cc File cc/raster/raster_buffer_provider.cc (left): https://codereview.chromium.org/2786103003/diff/20001/cc/raster/raster_buffer_provider.cc#oldcode30 cc/raster/raster_buffer_provider.cc:30: case RGBA_F16: On 2017/03/30 at 23:07:03, ccameron wrote: > ...
3 years, 8 months ago (2017-03-31 00:25:20 UTC) #20
reveman
Looks good. In case it has not been mentioned already; we shouldn't confuse basic GMB ...
3 years, 8 months ago (2017-03-31 09:13:55 UTC) #21
ccameron
Oops, I let this drop off the radar. I've updated the helper function names to ...
3 years, 8 months ago (2017-04-11 07:45:12 UTC) #26
reveman
lgtm + nit https://codereview.chromium.org/2786103003/diff/60001/gpu/command_buffer/common/gpu_memory_buffer_support.h File gpu/command_buffer/common/gpu_memory_buffer_support.h (right): https://codereview.chromium.org/2786103003/diff/60001/gpu/command_buffer/common/gpu_memory_buffer_support.h#newcode28 gpu/command_buffer/common/gpu_memory_buffer_support.h:28: GPU_EXPORT bool IsImageFromGpuMemoryBufferFormatSupported( nit: can update ...
3 years, 8 months ago (2017-04-11 16:28:27 UTC) #27
ccameron
Thanks zmo@, could you OWNERs gpu/ dcheng@, could you OWNERs IPC/mojo https://codereview.chromium.org/2786103003/diff/60001/gpu/command_buffer/common/gpu_memory_buffer_support.h File gpu/command_buffer/common/gpu_memory_buffer_support.h (right): ...
3 years, 8 months ago (2017-04-12 05:34:35 UTC) #31
dcheng
ipc/mojo lgtm
3 years, 8 months ago (2017-04-12 07:32:08 UTC) #34
Zhenyao Mo
On 2017/04/12 07:32:08, dcheng wrote: > ipc/mojo lgtm gpu lgtm
3 years, 8 months ago (2017-04-12 16:21:05 UTC) #35
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2786103003/80001
3 years, 8 months ago (2017-04-12 17:52:06 UTC) #38
commit-bot: I haz the power
3 years, 8 months ago (2017-04-12 19:48:00 UTC) #42
Message was sent while issue was closed.
Committed patchset #5 (id:80001) as
https://chromium.googlesource.com/chromium/src/+/c1fcde58c22a5825c44cbad17eb3...

Powered by Google App Engine
This is Rietveld 408576698