New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 778377 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Feature



Sign in to add a comment

We should stop rendering when screen is off.

Project Member Reported by penghuang@chromium.org, Oct 25 2017

Issue description

When I was investigating the vsync provider on chromebook (chell), I found we are continue calling SwapBuffers for the login screen when screen is off (due to no user input for a while). I didn't test chrome after login, but I think it may have the same issue. For better battery performance, should we stop doing it?


See below attached patch which I used for the test.

When the screen is off, methods GpuBrowserCompositorOutputSurface::SwapBuffers(), GpuBrowserCompositorOutputSurface::OnGpuSwapBuffersCompleted() and DrmVSyncProvider::GetVSyncParameters() are being called continuously.
Method GpuBrowserCompositorOutputSurface::OnVSyncParametersUpdated() is called at all, probably it is because the vsync signal is disabled.
 
vsync.patch
3.3 KB Download

Comment 1 by danakj@chromium.org, Oct 25 2017

Cc: vmp...@chromium.org

Comment 2 by piman@chromium.org, Oct 25 2017

Cc: marc...@chromium.org
If we stop rendering, doesn't that mean that when the user interacts with the machine again, we'll see a flash of out-of-date contents?
Naively, we could just render one frame before we turn the screen back on? IIRC we already do something like this for monitor plug/resolution changes.

Comment 4 by danakj@chromium.org, Oct 27 2017

Owner: vmi...@chromium.org
Status: Assigned (was: Untriaged)
Thanks this is an interesting find. => vmiura for prioritization.

Comment 5 by danakj@chromium.org, Oct 27 2017

Labels: -Type-Bug Type-Feature

Sign in to add a comment