Skip to content
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

[iOS] remove arbitrary framerate cap. #51663

Merged
merged 2 commits into from
Mar 26, 2024

Conversation

jonahwilliams
Copy link
Member

This doesn't actually seem to be helping. For the most part, the frame time of the banners is steady with occassional spikes. Adding the framerate cap doesn't help the spikes, since those are in the 30+ ms frame time, and just results in everything else looking janky as well (especially if we dance around the cap, then we go 120 - 80)

Since this is based on an arbitrary number, from an arbitrary app, on an arbitrary point in time we should remove it and instead try to fix the performance problems

Copy link
Member

@jmagman jmagman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cross-referencing to #39172
LGTM

// Pressure tested on iPhone 13 pro, the oldest iPhone that supports refresh rate greater than
// 60fps. A flutter app can handle fast scrolling on 80 fps with 6 PlatformViews in the scene
// at the same time.
new_max_refresh_rate = 80;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ask to learn: Does this mean that we wanted to cap to 80FPS when there's platform view on screen (but if no platform view, it's capped at 120FPS)? By removing this, we remove the 80FPS cap, and let OS to decide what refresh rate is.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When there were 5 or more platform views, we set the cap to 80. Now we always set to whatever the maximum rate is, in this case 120. AFAIK, we don't fully support adjusting the frame rate.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For background, check out flutter/flutter#116640 #39172 (and #39172), there's a lot of info in that issue.

@jonahwilliams jonahwilliams added the autosubmit Merge PR when tree becomes green via auto submit App label Mar 26, 2024
@auto-submit auto-submit bot merged commit 3f332b2 into flutter:main Mar 26, 2024
25 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Mar 27, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Mar 27, 2024
…145801)

flutter/engine@92ebd47...d872d50

2024-03-27 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from uu8lffXkeJQ9PC96I... to Lk8KBU-c97ROj-YHm... (flutter/engine#51690)
2024-03-26 zanderso@users.noreply.github.com Turn off internal retries for Android scenario app tests (flutter/engine#51689)
2024-03-26 skia-flutter-autoroll@skia.org Roll Skia from 1808016c7a6d to 23a5617e7f47 (1 revision) (flutter/engine#51688)
2024-03-26 chris@bracken.jp [macOS] Consolidate FlutterViewController static types/data (flutter/engine#51486)
2024-03-26 skia-flutter-autoroll@skia.org Roll Skia from 0590062821dc to 1808016c7a6d (3 revisions) (flutter/engine#51686)
2024-03-26 jonahwilliams@google.com [iOS] remove arbitrary framerate cap. (flutter/engine#51663)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from uu8lffXkeJQ9 to Lk8KBU-c97RO

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC jacksongardner@google.com,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit Merge PR when tree becomes green via auto submit App platform-ios
Projects
None yet
3 participants