Skip to content

Perf test for color filter with saveLayer #52063

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Mar 13, 2020

Conversation

liyuqian
Copy link
Contributor

@liyuqian liyuqian commented Mar 6, 2020

This should reveal the problem in:
#51975

Fixing that issue should significantly lower the frame rasterization
time.

This should reveal the problem in:
flutter#51975

Fixing that issue should significantly lower the frame rasterization
time.
@fluttergithubbot fluttergithubbot added the c: contributor-productivity Team-specific productivity, code health, technical debt. label Mar 6, 2020
@liyuqian liyuqian requested a review from flar March 6, 2020 00:36
@liyuqian liyuqian added perf: speed Performance issues related to (mostly rendering) speed c: performance Relates to speed or footprint issues (see "perf:" labels) customer: dream (g3) labels Mar 6, 2020
@liyuqian
Copy link
Contributor Author

liyuqian commented Mar 6, 2020

@karhu: I've simplified your reproduction app, and put it inside Flutter's devicelab perf test suite. Do you think that you can directly create a PR like this next time?

As for the two problem you mentioned,

  1. "saveLayer with ColorFilter disables the raster cache" will be tracked in saveLayer with ColorFilter/ImageFilter disables raster cache  #51975 and a fix would show a significant improvement in this test.
  2. "picture is always recreated under fade transition" is actually something that you can fix in your code. You simply need to add a RepaintBoundary here to not let the fade animation rebuild everything below.

@karhu
Copy link

karhu commented Mar 6, 2020

@liyuqian Thanks a lot for your work on this! I went over your changes and it is indeed a great reference for future repro apps. Will definitely give it a try next time 👍

@flar
Copy link
Contributor

flar commented Mar 12, 2020

The use of the color param as a flag to trigger the use of shadow.color looks a little wonky, but that's not a blocking concern.

LGTM.

@liyuqian
Copy link
Contributor Author

Oh, I see it. Now I've removed color and changed everything to useColorFilter now. Thanks for the suggestion!

@fluttergithubbot fluttergithubbot merged commit c80d1e8 into flutter:master Mar 13, 2020
@liyuqian liyuqian deleted the color_filter_test branch March 13, 2020 18:54
@lock
Copy link

lock bot commented Apr 2, 2020

This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

@lock lock bot locked and limited conversation to collaborators Apr 2, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
c: contributor-productivity Team-specific productivity, code health, technical debt. c: performance Relates to speed or footprint issues (see "perf:" labels) customer: dream (g3) perf: speed Performance issues related to (mostly rendering) speed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants