diff options
author | brianderson@chromium.org <brianderson@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-09-21 04:10:03 +0000 |
---|---|---|
committer | brianderson@chromium.org <brianderson@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-09-21 04:10:03 +0000 |
commit | 425e533958102722cf6137501978a8be886e420f (patch) | |
tree | e978ecbeeaf1100f101ca4221ace01eb7506b29e /sync | |
parent | 73eb9571e2adb83ae26e1fc53104d88e66c35ff6 (diff) | |
download | chromium_src-425e533958102722cf6137501978a8be886e420f.zip chromium_src-425e533958102722cf6137501978a8be886e420f.tar.gz chromium_src-425e533958102722cf6137501978a8be886e420f.tar.bz2 |
cc: Implement deadline scheduling disabled by default
This patch adds logic to the Scheduler to actually use the BeginFrame
and deadline, but is not enabled by default on any platform yet. This
will ensure emulation of old scheduler in the fallback path is sane.
Emulation of the old path is implemented using an immediate deadline.
SchedulerStateMachine::begin_frame_state has been added and can be in one
of 4 states: Idle, InsideBeginFrame, DeadlinePending, or InsideDeadline.
Notable restrictions of the states are:
- We start a commit as soon after InsideBeginFrame as we can, since the
BeginFrame will be coordinated with user input. (True on Android.
Soon to be true on other platforms.)
- We do not start a commit while Idle, in order to wait for the next
batch of user input.
- Draw and swap only occurs during the InsideDeadline state.
The deadlines of the Browser and Renderer compositors can be nested in
order to have a total draw latency of < 1 frame when starting off. If we
can't hit 1 frame of latency consistently, we will fall back to a higher
latency mode to increase throughput.
TBR=enne@chromium.org
BUG=243461
Review URL: https://chromiumcodereview.appspot.com/24070006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@224560 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync')
0 files changed, 0 insertions, 0 deletions