This repository was archived by the owner on Feb 25, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 6k
Allow raster caching any layer subtree #6442
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
liyuqian
commented
Oct 4, 2018
|
|
||
| class ContainerLayer; | ||
|
|
||
| struct PrerollContext { |
Contributor
Author
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@chinmaygarde : I moved this out so I can forward declare it in raster_cache.h
liyuqian
commented
Oct 4, 2018
| SkiaGPUObject<SkPicture> picture_; | ||
| bool is_complex_ = false; | ||
| bool will_change_ = false; | ||
| RasterCacheResult raster_cache_result_; |
Contributor
Author
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@chinmaygarde : I removed RasterCacheResult from Layer to make it thread safe. Now we can only ask RasterCache::Get to retrieve the RasterCacheResult when we need it.
We first test this with OpacityLayer. This test alone (without retained rendering) should have ~30% speedup as we'll have fewer render target switches by snapshoting in the Preroll instead of saveLayer in the Paint. In my local flutter_gallery transition perf tests, the average frame time drops from ~16ms to ~12ms.
Closed
liyuqian
added a commit
to liyuqian/engine
that referenced
this pull request
Oct 8, 2018
This reverts commit 74662ab. This should land after flutter#6442
liyuqian
added a commit
to liyuqian/engine
that referenced
this pull request
Oct 8, 2018
This reverts commit 74662ab. This should land after flutter#6442
chinmaygarde
approved these changes
Oct 11, 2018
liyuqian
added a commit
that referenced
this pull request
Oct 11, 2018
liyuqian
added a commit
to liyuqian/engine
that referenced
this pull request
Oct 11, 2018
flutter#6506)" This reverts commit c6e6da5.
liyuqian
added a commit
that referenced
this pull request
Oct 11, 2018
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Oct 11, 2018
flutter/engine@9cad7b6...c6e6da5 git log 9cad7b6..c6e6da5 --no-merges --oneline c6e6da5 Revert "Allow raster caching any layer subtree (flutter#6442)" (flutter/engine#6506) 6447418 Allow raster caching any layer subtree (flutter/engine#6442) The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary.
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Oct 12, 2018
flutter/engine@9cad7b6...daf4447 git log 9cad7b6..daf4447 --no-merges --oneline daf4447 Reland "Allow raster caching any layer subtree (flutter#6442)" (flutter/engine#6507) c6e6da5 Revert "Allow raster caching any layer subtree (flutter#6442)" (flutter/engine#6506) 6447418 Allow raster caching any layer subtree (flutter/engine#6442) The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary.
engine-flutter-autoroll
added a commit
to flutter/flutter
that referenced
this pull request
Oct 12, 2018
flutter/engine@9cad7b6...daf4447 git log 9cad7b6..daf4447 --no-merges --oneline daf4447 Reland "Allow raster caching any layer subtree (#6442)" (flutter/engine#6507) c6e6da5 Revert "Allow raster caching any layer subtree (#6442)" (flutter/engine#6506) 6447418 Allow raster caching any layer subtree (flutter/engine#6442) The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary.
liyuqian
added a commit
that referenced
this pull request
Oct 12, 2018
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We first test this with OpacityLayer. This test alone (without retained rendering) should have ~30% speedup as we'll have fewer render target switches by snapshoting in the Preroll instead of saveLayer in the Paint.
In my local flutter_gallery transition perf tests, the average frame time drops from ~16ms to ~12ms.
flutter/flutter#21756