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

Issue 854460 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Last visit > 30 days ago
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

Mali drivers slower when resetting state after uprev

Project Member Reported by dcasta...@chromium.org, Jun 20 2018

Issue description

We noticed that Mali drivers regressed in terms of CPU performance on Dru when setting GL states.

While investigating  crbug.com/843525  we noticed that a regression happened in this range:
10502.0.0 ~ 67.0.3375.0 ---> Bad
10488.0.0 ~ 67.0.3369.0 ---> Good

Mali uprev landed between those two versions.

Running a trace before and after with similar workloads shows that we now spend more CPU time than we used to in GLES2DecoderImpl::RestoreState.

Attached two traces, trace_hhh was taken before the regression and trace_ggg after the uprev.
Between seconds 2 and 2.5 the workloads are similar. The GPU process main thread (CrGpuMain) is completely busy in trace_ggg while it has some free time in trace_hhh.
The main difference seems to be GLES2DecoderImpl::RestoreState that after the regression takes up to 6ms, while before it used to take less than 1ms.

It also seems that wall time increased significantly, while CPU time didn't.
 
trace_hhh.json.gz
4.5 MB Download
trace_ggg.json.gz
4.0 MB Download
Issue 854457 has been merged into this issue.
Cc: anders.p...@arm.com
Owner: marc...@chromium.org
Status: Assigned (was: Untriaged)
marcheu@, could you help in triaging this?
Anders is already CCd, there is nothing to do

Comment 5 by anders.p...@arm.com, Jun 26 2018

Arm Ref MIDCET-2030
Cc: tbuck...@chromium.org
Still under investigation by ARM.

Did we do anything on the Google side to try to work around this?
@#7: We really noticed this issue only for low latency clients where they'd be drawing on each input event (multiple per frames).
Google side we added a completion query on the low latency client to throttle GL commands.

It'd be still nice to get the old performance when restoring state, if possible.
The client-side fix still does not make Kevin's latency as low as it was before this regression.

Sign in to add a comment