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

Issue 1647333002: Fix GPUTiming offset so it is stable within significant digits. (Closed)

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

Description

Fix GPUTiming offset so it is stable within significant digits. The timer offset between GPU and CPU time were resolved to microsecond accuracy before. This was causing inaccuracy flakiness when comparing timestamps. The issue is that we cannot assume these instructions run in microsecond accuracy, so the offset will change from query to query. Instead they should be considered only up to a sensible accuracy for these instructions (such as milliseconds) and only updating the offset if it has changed more than 1 millisecond. The reason we compare with the previous offset is so we catch drifts from the previous calculation rather than an integer boundary. For example 0.9 vs 1.1 would be 0 and 1. Note even if we were rounding it we would still have this problem, IE 0.45 vs 0.55 would be 0 and 1. BUG=582676 Committed: https://crrev.com/ea6d840e4d96f6df739f55a89ccf69daa3569a77 Cr-Commit-Position: refs/heads/master@{#372843}

Patch Set 1 #

Total comments: 4

Patch Set 2 : Use base::TimeDelta #

Patch Set 3 : Increased fake CPU time in unittest to be greater than 1ms #

Unified diffs Side-by-side diffs Delta from patch set Stats (+14 lines, -4 lines) Patch
M ui/gl/gpu_timing.cc View 1 1 chunk +13 lines, -3 lines 0 comments Download
M ui/gl/gpu_timing_unittest.cc View 1 2 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 18 (7 generated)
David Yen
kbr@, please review this subtle bug I found. I tried to explain the issue in ...
4 years, 10 months ago (2016-01-29 22:39:43 UTC) #3
Ken Russell (switch to Gerrit)
Could you please file a bug and describe exactly what kind of timestamp comparisons were ...
4 years, 10 months ago (2016-01-29 22:54:31 UTC) #4
David Yen
I've filed an issue and linked it above. I put in a more detailed explanation ...
4 years, 10 months ago (2016-01-30 02:14:11 UTC) #7
Ken Russell (switch to Gerrit)
Thanks, this looks good now but could you reply to my question on the bug ...
4 years, 10 months ago (2016-01-30 02:16:50 UTC) #8
Ken Russell (switch to Gerrit)
Thanks for answering the question in https://code.google.com/p/chromium/issues/detail?id=582676#c3 . The code looks good but some related ...
4 years, 10 months ago (2016-01-30 16:24:17 UTC) #9
David Yen
On 2016/01/30 16:24:17, Ken Russell wrote: > Thanks for answering the question in > https://code.google.com/p/chromium/issues/detail?id=582676#c3 ...
4 years, 10 months ago (2016-02-01 06:27:52 UTC) #10
David Yen
On 2016/02/01 06:27:52, David Yen wrote: > On 2016/01/30 16:24:17, Ken Russell wrote: > > ...
4 years, 10 months ago (2016-02-01 23:02:30 UTC) #11
Ken Russell (switch to Gerrit)
lgtm
4 years, 10 months ago (2016-02-01 23:03:51 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1647333002/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1647333002/40001
4 years, 10 months ago (2016-02-01 23:08:24 UTC) #14
commit-bot: I haz the power
Committed patchset #3 (id:40001)
4 years, 10 months ago (2016-02-02 00:55:14 UTC) #16
commit-bot: I haz the power
4 years, 10 months ago (2016-02-02 00:56:43 UTC) #18
Message was sent while issue was closed.
Patchset 3 (id:??) landed as
https://crrev.com/ea6d840e4d96f6df739f55a89ccf69daa3569a77
Cr-Commit-Position: refs/heads/master@{#372843}

Powered by Google App Engine
This is Rietveld 408576698