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

Issue 2770113003: gpu: Fix AsyncSwapBuffer tracing. (Closed)

Created:
3 years, 9 months ago by Daniele Castagna
Modified:
3 years, 9 months ago
Reviewers:
reveman, piman
CC:
chromium-reviews, piman+watch_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

gpu: Fix AsyncSwapBuffer tracing. AsyncSwapBuffer tracing assumed that at most one swap-buffer was in flight. This is not true, since on CrOS we triple buffer and we can have up two async swap-buffers pending. The result of this was a confusing trace where one AsyncSwapBuffer trace would start with swap-buffer timestamp of frame N and end at FinishSwapBuffer timestamp of frame N - 1. This CL fixes this issue using an id for every AsyncSwapBuffer trace. In this way multiple (at most 2 hopefully) AsyncSwapBuffers can be visualised at the same time in the tracing timeline. BUG=705196 CQ_INCLUDE_TRYBOTS=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/2770113003 Cr-Commit-Position: refs/heads/master@{#459901} Committed: https://chromium.googlesource.com/chromium/src/+/0bebf0ea569d282c3db14f067b5e8fdebf023c34

Patch Set 1 #

Total comments: 14

Patch Set 2 : Address reveman's comments. #

Patch Set 3 : signed/unsigned comparison. #

Total comments: 2

Patch Set 4 : Remove queue. #

Total comments: 2

Patch Set 5 : Reveman's nit. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+25 lines, -9 lines) Patch
M gpu/command_buffer/service/gles2_cmd_decoder.cc View 1 2 3 4 6 chunks +25 lines, -9 lines 0 comments Download

Messages

Total messages: 43 (28 generated)
Daniele Castagna
3 years, 9 months ago (2017-03-24 06:24:17 UTC) #3
reveman
https://codereview.chromium.org/2770113003/diff/1/gpu/command_buffer/service/gles2_cmd_decoder.cc File gpu/command_buffer/service/gles2_cmd_decoder.cc (right): https://codereview.chromium.org/2770113003/diff/1/gpu/command_buffer/service/gles2_cmd_decoder.cc#newcode929 gpu/command_buffer/service/gles2_cmd_decoder.cc:929: void RegisterTraceAndFinishSwapBuffers(gfx::SwapResult result); how about FinishAsyncSwapBuffers? https://codereview.chromium.org/2770113003/diff/1/gpu/command_buffer/service/gles2_cmd_decoder.cc#newcode2375 gpu/command_buffer/service/gles2_cmd_decoder.cc:2375: uint32_t ...
3 years, 9 months ago (2017-03-24 06:35:10 UTC) #6
Daniele Castagna
https://codereview.chromium.org/2770113003/diff/1/gpu/command_buffer/service/gles2_cmd_decoder.cc File gpu/command_buffer/service/gles2_cmd_decoder.cc (right): https://codereview.chromium.org/2770113003/diff/1/gpu/command_buffer/service/gles2_cmd_decoder.cc#newcode929 gpu/command_buffer/service/gles2_cmd_decoder.cc:929: void RegisterTraceAndFinishSwapBuffers(gfx::SwapResult result); On 2017/03/24 at 06:35:09, reveman wrote: ...
3 years, 9 months ago (2017-03-24 06:51:24 UTC) #7
reveman
lgtm
3 years, 9 months ago (2017-03-24 06:52:53 UTC) #10
Daniele Castagna
+piman for ownership.
3 years, 9 months ago (2017-03-24 06:57:36 UTC) #12
piman
https://codereview.chromium.org/2770113003/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder.cc File gpu/command_buffer/service/gles2_cmd_decoder.cc (right): https://codereview.chromium.org/2770113003/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder.cc#newcode2376 gpu/command_buffer/service/gles2_cmd_decoder.cc:2376: std::queue<uint32_t> pending_swaps_; Because the swap ids are pushed (and ...
3 years, 9 months ago (2017-03-24 18:55:02 UTC) #19
piman
https://codereview.chromium.org/2770113003/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder.cc File gpu/command_buffer/service/gles2_cmd_decoder.cc (right): https://codereview.chromium.org/2770113003/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder.cc#newcode2376 gpu/command_buffer/service/gles2_cmd_decoder.cc:2376: std::queue<uint32_t> pending_swaps_; Because the swap ids are pushed (and ...
3 years, 9 months ago (2017-03-24 18:55:02 UTC) #20
Daniele Castagna
https://codereview.chromium.org/2770113003/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder.cc File gpu/command_buffer/service/gles2_cmd_decoder.cc (right): https://codereview.chromium.org/2770113003/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder.cc#newcode2376 gpu/command_buffer/service/gles2_cmd_decoder.cc:2376: std::queue<uint32_t> pending_swaps_; On 2017/03/24 at 18:55:02, piman wrote: > ...
3 years, 9 months ago (2017-03-27 14:03:21 UTC) #24
reveman
still lgtm https://codereview.chromium.org/2770113003/diff/60001/gpu/command_buffer/service/gles2_cmd_decoder.cc File gpu/command_buffer/service/gles2_cmd_decoder.cc (right): https://codereview.chromium.org/2770113003/diff/60001/gpu/command_buffer/service/gles2_cmd_decoder.cc#newcode15532 gpu/command_buffer/service/gles2_cmd_decoder.cc:15532: DCHECK(pending_swaps_); nit: DCHECK_NE(pending_swaps_, 0u)
3 years, 9 months ago (2017-03-27 14:21:22 UTC) #25
Daniele Castagna
https://codereview.chromium.org/2770113003/diff/60001/gpu/command_buffer/service/gles2_cmd_decoder.cc File gpu/command_buffer/service/gles2_cmd_decoder.cc (right): https://codereview.chromium.org/2770113003/diff/60001/gpu/command_buffer/service/gles2_cmd_decoder.cc#newcode15532 gpu/command_buffer/service/gles2_cmd_decoder.cc:15532: DCHECK(pending_swaps_); On 2017/03/27 at 14:21:22, reveman wrote: > nit: ...
3 years, 9 months ago (2017-03-27 16:11:10 UTC) #28
piman
lgtm
3 years, 9 months ago (2017-03-27 18:02:41 UTC) #31
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/2770113003/80001
3 years, 9 months ago (2017-03-27 18:34:27 UTC) #36
commit-bot: I haz the power
Try jobs failed on following builders: mac_optional_gpu_tests_rel on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_optional_gpu_tests_rel/builds/8196)
3 years, 9 months ago (2017-03-27 20:17:04 UTC) #38
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/2770113003/80001
3 years, 9 months ago (2017-03-27 22:02:27 UTC) #40
commit-bot: I haz the power
3 years, 9 months ago (2017-03-27 22:15:24 UTC) #43
Message was sent while issue was closed.
Committed patchset #5 (id:80001) as
https://chromium.googlesource.com/chromium/src/+/0bebf0ea569d282c3db14f067b5e...

Powered by Google App Engine
This is Rietveld 408576698