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

Issue 1687353002: Force time elapsed queries on certain drivers. (Closed)

Created:
4 years, 10 months ago by Ian Ewell
Modified:
4 years, 10 months ago
CC:
chromium-reviews, Geoff Lang
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Force time elapsed queries on certain drivers. Certain drivers, particularly Mac drivers and ANGLE when running on the D3D11 backend do not support timestamp queries despite implementing an extension that has them in the specification (ARB_timer_query and EXT_disjoint_timer_query). To indicate this, the driver returns 0 when queried for the size of the timestamps they return using glGetQueryiv. Additional logic was added to the GPUTimingImpl class to check for that when using those extensions and to fall back to the time elapsed query implementation of timestamps if the driver does not have native support. BUG=587173 CQ_INCLUDE_TRYBOTS=tryserver.chromium.win:win_optional_gpu_tests_rel Committed: https://crrev.com/71c79ec0e0742a0b4478f33ed9ef9cb50cc4df55 Cr-Commit-Position: refs/heads/master@{#376049}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Fix nits #

Total comments: 1

Patch Set 3 : Small refactoring and check for time elapsed support #

Patch Set 4 : Move to lazy implementation and fix tests #

Patch Set 5 : Add bug to commit message #

Total comments: 2

Patch Set 6 : Refactor tests #

Total comments: 2

Patch Set 7 : nits #

Total comments: 3

Patch Set 8 : Initial patch #

Patch Set 9 : Initial patch #

Unified diffs Side-by-side diffs Delta from patch set Stats (+16 lines, -6 lines) Patch
M gpu/command_buffer/service/feature_info.cc View 1 2 3 4 5 6 7 1 chunk +7 lines, -4 lines 0 comments Download
M ui/gl/gpu_timing.cc View 1 2 3 4 5 6 7 8 1 chunk +9 lines, -2 lines 0 comments Download

Messages

Total messages: 46 (24 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1687353002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1687353002/1
4 years, 10 months ago (2016-02-11 16:30:36 UTC) #2
commit-bot: I haz the power
Dry run: No L-G-T-M from a valid reviewer yet. Only full committers are accepted. Even ...
4 years, 10 months ago (2016-02-11 16:30:37 UTC) #4
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1687353002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1687353002/1
4 years, 10 months ago (2016-02-11 16:34:29 UTC) #8
Geoff Lang
https://codereview.chromium.org/1687353002/diff/1/ui/gl/gpu_timing.cc File ui/gl/gpu_timing.cc (right): https://codereview.chromium.org/1687353002/diff/1/ui/gl/gpu_timing.cc#newcode335 ui/gl/gpu_timing.cc:335: // Certain drivers such as Mac drivers and ANGLE's ...
4 years, 10 months ago (2016-02-11 16:37:02 UTC) #9
David Yen
Do we have to query the counter bits for GL_TIME_ELAPSED as well? I suppose if ...
4 years, 10 months ago (2016-02-11 17:53:20 UTC) #10
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1687353002/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1687353002/60001
4 years, 10 months ago (2016-02-16 19:37:42 UTC) #13
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 10 months ago (2016-02-16 20:46:48 UTC) #15
David Yen
https://codereview.chromium.org/1687353002/diff/80001/ui/gl/gpu_timing_fake.cc File ui/gl/gpu_timing_fake.cc (right): https://codereview.chromium.org/1687353002/diff/80001/ui/gl/gpu_timing_fake.cc#newcode83 ui/gl/gpu_timing_fake.cc:83: bool query_timestamp_counter_bits) { Whether or not timestamp counter bits ...
4 years, 10 months ago (2016-02-17 19:04:55 UTC) #17
Ian Ewell
https://codereview.chromium.org/1687353002/diff/80001/ui/gl/gpu_timing_fake.cc File ui/gl/gpu_timing_fake.cc (right): https://codereview.chromium.org/1687353002/diff/80001/ui/gl/gpu_timing_fake.cc#newcode83 ui/gl/gpu_timing_fake.cc:83: bool query_timestamp_counter_bits) { On 2016/02/17 19:04:55, David Yen wrote: ...
4 years, 10 months ago (2016-02-17 21:06:30 UTC) #19
Ian Ewell
On 2016/02/17 21:06:30, Ian Ewell wrote: > https://codereview.chromium.org/1687353002/diff/80001/ui/gl/gpu_timing_fake.cc > File ui/gl/gpu_timing_fake.cc (right): > > https://codereview.chromium.org/1687353002/diff/80001/ui/gl/gpu_timing_fake.cc#newcode83 ...
4 years, 10 months ago (2016-02-17 21:08:22 UTC) #26
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1687353002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1687353002/100001
4 years, 10 months ago (2016-02-17 21:08:52 UTC) #29
commit-bot: I haz the power
Dry run: No L-G-T-M from a valid reviewer yet. Only full committers are accepted. Even ...
4 years, 10 months ago (2016-02-17 21:08:53 UTC) #31
David Yen
LGTM with nits. https://codereview.chromium.org/1687353002/diff/100001/ui/gl/gpu_timing_fake.cc File ui/gl/gpu_timing_fake.cc (left): https://codereview.chromium.org/1687353002/diff/100001/ui/gl/gpu_timing_fake.cc#oldcode84 ui/gl/gpu_timing_fake.cc:84: // Time Stamp based queries. Was ...
4 years, 10 months ago (2016-02-17 21:16:43 UTC) #32
David Yen
+sievers@ for command_buffer review
4 years, 10 months ago (2016-02-17 21:17:54 UTC) #34
Ken Russell (switch to Gerrit)
I had to ask David about how this fallback path worked (estimating GPU timestamps with ...
4 years, 10 months ago (2016-02-17 22:31:43 UTC) #35
no sievers
https://codereview.chromium.org/1687353002/diff/120001/ui/gl/gpu_timing.cc File ui/gl/gpu_timing.cc (right): https://codereview.chromium.org/1687353002/diff/120001/ui/gl/gpu_timing.cc#newcode408 ui/gl/gpu_timing.cc:408: timestamp_bit_count_gl_ = QueryTimestampBits(); Do you have to do that ...
4 years, 10 months ago (2016-02-17 23:08:45 UTC) #36
David Yen
https://codereview.chromium.org/1687353002/diff/120001/ui/gl/gpu_timing.cc File ui/gl/gpu_timing.cc (right): https://codereview.chromium.org/1687353002/diff/120001/ui/gl/gpu_timing.cc#newcode408 ui/gl/gpu_timing.cc:408: timestamp_bit_count_gl_ = QueryTimestampBits(); On 2016/02/17 23:08:45, sievers wrote: > ...
4 years, 10 months ago (2016-02-17 23:10:52 UTC) #37
no sievers
lgtm
4 years, 10 months ago (2016-02-17 23:11:30 UTC) #38
Ian Ewell
https://codereview.chromium.org/1687353002/diff/120001/ui/gl/gpu_timing.cc File ui/gl/gpu_timing.cc (right): https://codereview.chromium.org/1687353002/diff/120001/ui/gl/gpu_timing.cc#newcode408 ui/gl/gpu_timing.cc:408: timestamp_bit_count_gl_ = QueryTimestampBits(); On 2016/02/17 23:08:45, sievers wrote: > ...
4 years, 10 months ago (2016-02-17 23:11:53 UTC) #39
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1687353002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1687353002/120001
4 years, 10 months ago (2016-02-17 23:15:56 UTC) #42
commit-bot: I haz the power
Committed patchset #7 (id:120001)
4 years, 10 months ago (2016-02-18 00:45:49 UTC) #44
commit-bot: I haz the power
4 years, 10 months ago (2016-02-18 00:47:22 UTC) #46
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/71c79ec0e0742a0b4478f33ed9ef9cb50cc4df55
Cr-Commit-Position: refs/heads/master@{#376049}

Powered by Google App Engine
This is Rietveld 408576698