Skip to content

Performance win: Set up baseline profiles and startup profiles. - #7055

Merged
cooltey merged 11 commits into
mainfrom
baselineProfile
Oct 28, 2026
Merged

cooltey merged 11 commits into
mainfrom
baselineProfile

Conversation

@dbrant

@dbrant dbrant commented Oct 23, 2026 •

Copy link
Copy Markdown
Member

Modern best practices tell us to include baseline profiles and startup profiles in our app, since the Android ecosystem is so riddled with tech debt that it requires us (the developers) to care about the minutiae of how the app will be JITted on users' devices.

  • Baseline Profiles tell the AOT compiler (on the user's device) which classes and methods to pre-compile, which will improve initial performance.
  • Startup Profiles tell the DEX optimizer (on the developer's device) which classes to put into the first classes.dex file, so that only the first dex file needs to be loaded upon startup.

These profiles should be regenerated once in a while, or whenever we make significant changes to the user journey when the app starts up.
This should be independent of obfuscation.

@dbrant dbrant added the Minor Minor stuff label Oct 23, 2026
@cooltey
cooltey merged commit b745aed into main Oct 28, 2026
1 check passed
@cooltey
cooltey deleted the baselineProfile branch October 28, 2026 20:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Minor Minor stuff

Development

Successfully merging this pull request may close these issues.

2 participants