Skip to content

[Impeller] All framework devicelab benchmarks are skipping the first (several) frames. #143404

Closed

Description

@jonahwilliams

As a result, we're not directly measuring the potential performance improvement from changes such as flutter-team-archive/engine#50521 . From doing some research, this was done intentionally - speciifcally to ignore the warm up frames / shader work done in 2019.

Even if this logic was removed, because the test runner is responsible for connecting to the application and enabling the timeline range, the first frame might not be present and/or this could be flaky.

We may need an alternative test harness to capture first frame times.

Activity

  1. added
    P1High-priority issues at the top of the work list
    on Feb 13, 2024
  2. jonahwilliams commented on Feb 13, 2024

    @jonahwilliams
    ContributorAuthor

    Example: local run --enable-impeller --profile, looking at Dart timeline:

    image

    driver test, with await first frame commented out:

    image

  3. jonahwilliams commented on Feb 13, 2024

    @jonahwilliams
    ContributorAuthor

    It looks like we only indirectly capture this using

    traceInfo['timeToFirstFrameRasterizedMicros'] = firstFrameRasterizedTimestampMicros - engineEnterTimestampMicros;

    We have timeToFirstFrameRasterizedMicros, but no actual measurement of frame time.
    timeToFirstFrameRasterizedMicros

    timeToFirstFrameRasterizedMicros

  4. jonahwilliams commented on Feb 13, 2024

    @jonahwilliams
    ContributorAuthor

    This is a framework generated event.

  5. github-actions commented on Mar 1, 2024

    @github-actions

    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.

  6. locked as resolved and limited conversation to collaborators on Mar 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

P1High-priority issues at the top of the work listteam-engineOwned by Engine team

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions