Skip to content

[Impeller] Changes to use depth based clipping have regressed GPU frame times. #145274

@jonahwilliams

Description

@jonahwilliams

Canonical benchmark is probably complex layout: https://flutter-flutter-perf.skia.org/e/?queries=device_type%3DPixel_7_Pro%26sub_result%3D90th_percentile_gpu_frame_time%26sub_result%3D99th_percentile_gpu_frame_time%26sub_result%3Daverage_gpu_frame_time%26test%3Dcomplex_layout_scroll_perf_impeller__timeline_summary&selected=commit%3D39677%26name%3D%252Carch%253Dintel%252Cbranch%253Dmaster%252Cconfig%253Ddefault%252Cdevice_type%253DPixel_7_Pro%252Cdevice_version%253Dnone%252Chost_type%253Dlinux%252Csub_result%253Daverage_gpu_frame_time%252Ctest%253Dcomplex_layout_scroll_perf_impeller__timeline_summary%252C

AFAIK this application has few or no non-convex shapes. average GPU frame time regressed about 1.5ms

The new gallery is a similar story, the main page which used to have GPU times around ~2-3ms is now taking ~7-8ms. This is pushing us closer to frame budget on the Pixel 7s.

Before

image

After

image

I don't think this is actually related to the StC portion of the change as there are few if any non-convex shapes. Instead, a change in depth testing from the assigned depth values/enabling of the depth test must be responsible

Metadata

Metadata

Assignees

Labels

P1High-priority issues at the top of the work liste: impellerImpeller rendering backend issues and features requeststeam-engineOwned by Engine teamtriaged-engineTriaged by Engine team

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions