-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Closed
Closed
Copy link
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work liste: impellerImpeller rendering backend issues and features requestsImpeller rendering backend issues and features requeststeam-engineOwned by Engine teamOwned by Engine teamtriaged-engineTriaged by Engine teamTriaged by Engine team
Description
flutter/engine#50076 added a mechanism to store impeller::Paths in the display list alongside the Skia Path. On an example application in #131345 (comment) , this mechanism is regressing performance due to the additonal cost of heap allocation/deallocation of the storage data. Because the Paths are recreated every frame, it does not benefit from the cache.
See also: #131345 (comment)
The additional dtor time in the profile is due to free-ing the cacheable paths. Perhaps we can get some of this performance back by inlining the vector allocation into the Path::Data object, thereby reducing the total heap allocations?
FYI @flar
Metadata
Metadata
Assignees
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work liste: impellerImpeller rendering backend issues and features requestsImpeller rendering backend issues and features requeststeam-engineOwned by Engine teamOwned by Engine teamtriaged-engineTriaged by Engine teamTriaged by Engine team