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

Issue 749483002: Allow Windows to use system Vsync if only one window is swapping (Closed)

Created:
6 years, 1 month ago by bajones
Modified:
5 years, 11 months ago
CC:
chromium-reviews, darin-cc_chromium.org, jam, kalyank, ozone-reviews_chromium.org, piman+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Allow Windows to use system Vsync if only one window is swapping This makes the common case (single browser window) smoother. Having multiple swapping windows visible will force the previous behavior. This patch differs from a previous variant (https://codereview.chromium.org/708483003) in that there's now a "timeout" before we attempt turning on vsync again. Specifically, we need to go for 60 frames without a frame where two surfaces swap in order to turn Vsync on. This accounts for cases where low-frequency updates in one window (blinking cursor) don't trigger frequent vsync state changes. Also prevents pathologically bad cases where two frequently updating windows would cause one another to skip alternating frames. BUG=422000 Committed: https://crrev.com/9b71e13d22829c2df1620211049a6032628ebea8 Cr-Commit-Position: refs/heads/master@{#309861}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Fixed compile issues on Linux #

Patch Set 3 : Addressed kbr@s feedback #

Patch Set 4 : Fix Linux nit #

Unified diffs Side-by-side diffs Delta from patch set Stats (+78 lines, -14 lines) Patch
M content/common/gpu/image_transport_surface.cc View 1 2 2 chunks +0 lines, -12 lines 0 comments Download
M ui/gl/gl_context_egl.h View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M ui/gl/gl_context_egl.cc View 1 2 3 chunks +7 lines, -1 line 0 comments Download
M ui/gl/gl_surface.h View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M ui/gl/gl_surface.cc View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M ui/gl/gl_surface_egl.h View 1 2 3 2 chunks +13 lines, -0 lines 0 comments Download
M ui/gl/gl_surface_egl.cc View 1 2 4 chunks +51 lines, -1 line 0 comments Download

Messages

Total messages: 12 (4 generated)
bajones
PTAL at this new variant of the Vsync fix. I feel like the 60-frame threshold ...
6 years, 1 month ago (2014-11-20 18:06:56 UTC) #2
Ken Russell (switch to Gerrit)
LGTM overall, once it compiles on all platforms. It does break some abstraction barriers. A ...
6 years, 1 month ago (2014-11-21 00:05:58 UTC) #3
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/749483002/40001
5 years, 11 months ago (2015-01-02 20:56:53 UTC) #5
commit-bot: I haz the power
Try jobs failed on following builders: linux_gpu on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/linux_gpu/builds/109197)
5 years, 11 months ago (2015-01-02 21:17:09 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/749483002/60001
5 years, 11 months ago (2015-01-02 22:09:17 UTC) #9
commit-bot: I haz the power
Committed patchset #4 (id:60001)
5 years, 11 months ago (2015-01-02 23:38:08 UTC) #10
commit-bot: I haz the power
Patchset 4 (id:??) landed as https://crrev.com/9b71e13d22829c2df1620211049a6032628ebea8 Cr-Commit-Position: refs/heads/master@{#309861}
5 years, 11 months ago (2015-01-02 23:38:55 UTC) #11
jdduke (slow)
5 years, 11 months ago (2015-01-08 01:20:32 UTC) #12
Message was sent while issue was closed.
On 2015/01/02 23:38:55, I haz the power (commit-bot) wrote:
> Patchset 4 (id:??) landed as
> https://crrev.com/9b71e13d22829c2df1620211049a6032628ebea8
> Cr-Commit-Position: refs/heads/master@{#309861}

I'm guessing this accounts for the (relatively) substantial input latency
improvements on Windows?

https://chromeperf.appspot.com/report?masters=ChromiumPerf&bots=chromium-rel-...

https://chromeperf.appspot.com/report?masters=ChromiumPerf&bots=chromium-rel-...

Powered by Google App Engine
This is Rietveld 408576698