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

Issue 616533 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 3
Type: Bug



Sign in to add a comment

GPU performance issue on retina macbook

Project Member Reported by jakearchibald@chromium.org, Jun 1 2016

Issue description

http://output.jsbin.com/watuhug/quiet

The above demo works at 60fps on a non-retina screen (at around 1080p), but totally dies on retina, even if the number of pixels being rendered is smaller.

However, if the zoom level is decreased (cmd & -), the frame-rate recovers, even though the number of pixels rendered remains the same.

https://www.youtube.com/watch?v=y5Zbzb_rv-o&feature=youtu.be shows:
Chrome (Canary) struggling at 100%
Hitting 60fps when zoom is decreased to 75% (although the text-shadow breaks)
Safari hitting 60fps at a larger size, no problem.

Attached traces for non-retina (hitting 60fps at around 1080p), and retina, where I follow the pattern in the video and decrease the zoom until the frame-rate hits 60fps.

From the trace, it appears that the GPU is the bottleneck. I suspect the zoom level is altering the texture sizes, making this switch from broken to working.

Force GPU rasterisation was enabled during the video capture & traces, but disabling it doesn't appear to make a difference. If I switch onto the integrated GPU in this macbook, performance increases compared to 100% zoom on the Nvidia, but it's still slow.

Machine is a 15" 2012 Macbook Pro, in case that matters.

 
trace_non-retina.json.gz
1.6 MB Download
trace_retina.json.gz
7.1 MB Download
Cc: ericrk@chromium.org
Components: -Internals>GPU Internals>Compositing>Rasterization
Owner: vmp...@chromium.org
Status: Assigned (was: Untriaged)
The time seems to be entirely in CoreAnimation's compositing.  What I suspect is that we're rendering layers at a high scale and should maybe consider limiting the scale.

Attached a trace on my MBP15" with frame viewer enabled.  We get layers with sizes:

 66.0MB
 35.5MB
 45.7MB
 83.8MB
 99.0MB
 5.1MB

vmpstr@ could you please take a look?
trace_star_zoom.json.gz
25.5 MB Download

Sign in to add a comment