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

Issue 2727573003: gpu: Add sync token dependencies to flush metadata. (Closed)

Created:
3 years, 9 months ago by sunnyps
Modified:
3 years, 9 months ago
Reviewers:
jbauman, dcheng, piman
CC:
chromium-reviews, piman+watch_chromium.org, cc-bugs_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

gpu: Add sync token dependencies to flush metadata. This CL adds a list of sync tokens, for which waits were inserted in the command buffer, to the flush message. This information will be used by the gpu scheduler to deschedule a command buffer until all sync tokens of its next flush are released. Also includes some minor cleanup. R=jbauman@chromium.org BUG=514813 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/2727573003 Cr-Commit-Position: refs/heads/master@{#456961} Committed: https://chromium.googlesource.com/chromium/src/+/7499629e5db5df76176f12b94dd4dffa69fbe668

Patch Set 1 #

Patch Set 2 : minor cleanup #

Patch Set 3 : test fixes #

Patch Set 4 : use verified sync token #

Total comments: 4

Patch Set 5 : rebase #

Patch Set 6 : jbauman's review #

Total comments: 16

Patch Set 7 : piman's review #

Patch Set 8 : fix broken tests oops #

Total comments: 2

Patch Set 9 : piman's review 2 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+178 lines, -125 lines) Patch
M cc/raster/gpu_raster_buffer_provider.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M cc/raster/one_copy_raster_buffer_provider.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M cc/test/test_context_support.h View 1 chunk +1 line, -1 line 0 comments Download
M cc/test/test_context_support.cc View 1 chunk +1 line, -2 lines 0 comments Download
M gpu/command_buffer/client/client_test_helper.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -1 line 0 comments Download
M gpu/command_buffer/client/context_support.h View 1 chunk +3 lines, -3 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation.h View 1 2 3 4 5 6 1 chunk +5 lines, -1 line 0 comments Download
M gpu/command_buffer/client/gles2_implementation.cc View 1 2 3 4 5 6 7 8 5 chunks +50 lines, -47 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation_unittest.cc View 1 2 3 4 5 6 7 8 7 chunks +14 lines, -12 lines 0 comments Download
M gpu/command_buffer/client/gpu_control.h View 1 2 3 4 5 6 7 8 1 chunk +12 lines, -5 lines 0 comments Download
M gpu/command_buffer/common/sync_token.h View 2 chunks +5 lines, -7 lines 0 comments Download
M gpu/command_buffer/tests/gl_manager.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -1 line 0 comments Download
M gpu/command_buffer/tests/gl_manager.cc View 1 2 3 4 5 6 7 8 1 chunk +3 lines, -1 line 0 comments Download
M gpu/gles2_conform_support/egl/context.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -1 line 0 comments Download
M gpu/gles2_conform_support/egl/context.cc View 1 2 3 4 5 6 7 8 1 chunk +3 lines, -1 line 0 comments Download
M gpu/ipc/client/command_buffer_proxy_impl.h View 1 2 3 4 5 6 7 8 2 chunks +11 lines, -8 lines 0 comments Download
M gpu/ipc/client/command_buffer_proxy_impl.cc View 1 2 3 4 5 6 7 8 7 chunks +30 lines, -19 lines 0 comments Download
M gpu/ipc/client/gpu_channel_host.h View 1 2 3 4 5 3 chunks +3 lines, -1 line 0 comments Download
M gpu/ipc/client/gpu_channel_host.cc View 1 2 3 4 5 3 chunks +6 lines, -1 line 0 comments Download
M gpu/ipc/common/gpu_messages.h View 1 2 3 4 5 1 chunk +3 lines, -2 lines 0 comments Download
M gpu/ipc/in_process_command_buffer.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -1 line 0 comments Download
M gpu/ipc/in_process_command_buffer.cc View 1 2 3 4 5 6 7 8 1 chunk +4 lines, -2 lines 0 comments Download
M gpu/ipc/service/gpu_command_buffer_stub.h View 1 2 3 4 5 1 chunk +2 lines, -1 line 0 comments Download
M gpu/ipc/service/gpu_command_buffer_stub.cc View 1 2 3 4 5 1 chunk +2 lines, -1 line 0 comments Download
M ppapi/proxy/ppapi_command_buffer_proxy.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -1 line 0 comments Download
M ppapi/proxy/ppapi_command_buffer_proxy.cc View 1 2 3 4 5 6 7 8 1 chunk +6 lines, -1 line 0 comments Download

Messages

Total messages: 42 (29 generated)
sunnyps
ptal
3 years, 9 months ago (2017-03-02 19:27:05 UTC) #18
jbauman
https://codereview.chromium.org/2727573003/diff/60001/gpu/command_buffer/client/gles2_implementation.cc File gpu/command_buffer/client/gles2_implementation.cc (right): https://codereview.chromium.org/2727573003/diff/60001/gpu/command_buffer/client/gles2_implementation.cc#newcode6166 gpu/command_buffer/client/gles2_implementation.cc:6166: gpu_control_->WaitSyncToken(sync_token); I think this should actually go after the ...
3 years, 9 months ago (2017-03-09 02:00:09 UTC) #19
sunnyps
Addressed comments. Renamed sync_token_dependencies to sync_token_fences. PTAL. Thanks! https://codereview.chromium.org/2727573003/diff/60001/gpu/command_buffer/client/gles2_implementation.cc File gpu/command_buffer/client/gles2_implementation.cc (right): https://codereview.chromium.org/2727573003/diff/60001/gpu/command_buffer/client/gles2_implementation.cc#newcode6166 gpu/command_buffer/client/gles2_implementation.cc:6166: gpu_control_->WaitSyncToken(sync_token); ...
3 years, 9 months ago (2017-03-10 03:26:20 UTC) #23
jbauman
lgtm
3 years, 9 months ago (2017-03-10 22:08:12 UTC) #26
sunnyps
piman@ ptal dcheng@ ptal at gpu_messages.h
3 years, 9 months ago (2017-03-13 22:28:35 UTC) #28
piman
Overall LGTM, there's a few nits. https://codereview.chromium.org/2727573003/diff/100001/gpu/command_buffer/client/gpu_control.h File gpu/command_buffer/client/gpu_control.h (right): https://codereview.chromium.org/2727573003/diff/100001/gpu/command_buffer/client/gpu_control.h#newcode105 gpu/command_buffer/client/gpu_control.h:105: // Returns true ...
3 years, 9 months ago (2017-03-13 23:17:39 UTC) #29
dcheng
ipc lgtm with some random comments https://codereview.chromium.org/2727573003/diff/100001/gpu/gles2_conform_support/egl/context.cc File gpu/gles2_conform_support/egl/context.cc (right): https://codereview.chromium.org/2727573003/diff/100001/gpu/gles2_conform_support/egl/context.cc#newcode226 gpu/gles2_conform_support/egl/context.cc:226: void Context::WaitSyncToken(const gpu::SyncToken& ...
3 years, 9 months ago (2017-03-14 06:53:03 UTC) #30
sunnyps
PTAL https://codereview.chromium.org/2727573003/diff/100001/gpu/command_buffer/client/gpu_control.h File gpu/command_buffer/client/gpu_control.h (right): https://codereview.chromium.org/2727573003/diff/100001/gpu/command_buffer/client/gpu_control.h#newcode105 gpu/command_buffer/client/gpu_control.h:105: // Returns true if the wait is valid. ...
3 years, 9 months ago (2017-03-15 00:03:08 UTC) #31
sunnyps
I broke some tests because of last minute changes. Fixed now. PTAL
3 years, 9 months ago (2017-03-15 00:16:42 UTC) #33
piman
lgtm https://codereview.chromium.org/2727573003/diff/100001/gpu/gles2_conform_support/egl/context.cc File gpu/gles2_conform_support/egl/context.cc (right): https://codereview.chromium.org/2727573003/diff/100001/gpu/gles2_conform_support/egl/context.cc#newcode226 gpu/gles2_conform_support/egl/context.cc:226: void Context::WaitSyncToken(const gpu::SyncToken& sync_token) {} On 2017/03/15 00:03:08, ...
3 years, 9 months ago (2017-03-15 00:30:14 UTC) #35
sunnyps
Thanks! https://codereview.chromium.org/2727573003/diff/100001/gpu/gles2_conform_support/egl/context.cc File gpu/gles2_conform_support/egl/context.cc (right): https://codereview.chromium.org/2727573003/diff/100001/gpu/gles2_conform_support/egl/context.cc#newcode226 gpu/gles2_conform_support/egl/context.cc:226: void Context::WaitSyncToken(const gpu::SyncToken& sync_token) {} On 2017/03/15 00:30:14, ...
3 years, 9 months ago (2017-03-15 00:56:12 UTC) #36
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/2727573003/160001
3 years, 9 months ago (2017-03-15 00:58:19 UTC) #39
commit-bot: I haz the power
3 years, 9 months ago (2017-03-15 02:36:38 UTC) #42
Message was sent while issue was closed.
Committed patchset #9 (id:160001) as
https://chromium.googlesource.com/chromium/src/+/7499629e5db5df76176f12b94dd4...

Powered by Google App Engine
This is Rietveld 408576698