Skip to content

NotifyIdle calls may overlap with rasterizer workloads. #113796

@chinmaygarde

Description

@chinmaygarde

Today, we try to interleave NotifyIdle calls between frame workloads on the UI thread. This is to ensure that the VM get as much information as possible on when to perform GCs. However, there isn't any consideration for workloads on the raster thread. When such calls overlap, the VM will attempt a GC when we are processing the raster thread workload for the frame. On lower end devices, this leads to core contention and dropped frame. This bug tracks reasoning about the accuracy of when we tell the VM that it is an appropriate time to perform a GC.
Screen Shot 2022-10-19 at 2 17 17 PM

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Important issues not at the top of the work listcustomer: chalk (g3)dependency: dartDart team may need to help usengineflutter/engine related. See also e: labels.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions