DescriptionMake disable vsync run the renderer independently
https://codereview.chromium.org/2083423006 removed the creation of begin
frame sources inside of cc proxies. When vsync was disabled, the
browser would run unthrottled but the renderer would still tick based
on the browser. This regressed some perf tests. This patch reverts
that situation and reimplements unthrottled renderer begin frame sources
in a different way.
When the command line parameter is present, the renderer now runs
unthrottled by creating a separate unthrottled begin frame source inside
of RenderThreadImpl instead of an external one.
As some clean up, the property of being throttled is baked into the
BeginFrameSource interface itself. This allows for the removal of the
throttling scheduler setting (and the already unused use external bfs
setting). This should allow for future patches to allow toggling this
property.
The browser compositor and display compositor continue to be tied
together and tick at the same rate. Therefore, with this patch,
--disable-gpu-vsync=gpu only applies to the display/browser.
--disable-gpu-vsync=beginframe only applies to the renderer.
--disable-gpu-vsync on its own will unthrottle both.
R=brianderson@chromium.org,sunnyps@chromium.org
BUG=643722, 644926
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
Committed: https://crrev.com/e292bdc26487a681a93fab35767adcbaba5d524e
Cr-Commit-Position: refs/heads/master@{#418937}
Patch Set 1 #
Total comments: 7
Patch Set 2 : Fix command line logic #Patch Set 3 : Rebase #Patch Set 4 : Fix android compile #Patch Set 5 : Really fix Android #Patch Set 6 : Silence uninitialized variable warning #Patch Set 7 : Remove disabled vsync test #Patch Set 8 : With additional comment #
Total comments: 2
Patch Set 9 : Comments #Patch Set 10 : Rebase #Messages
Total messages: 78 (40 generated)
|