Skip to content

Conversation

@Akucuki
Copy link
Collaborator

@Akucuki Akucuki commented Sep 9, 2022

Added Macrobenchmark module.
Added basic Macrobenchmark baseline profile generator for startup speed improvement & sample generated baseline profile file itself.
Disabled Venom due to a problem with resolving its dependency by benchmark module

Running Macrobenchmark tests requires a real device.
Benchmark app startup results with different startup modes (cold, warm, hot) and compilation modes (partial with baseline profile, no compilation, full compilation, partial compilation without baseline profile):

Screenshot from 2022-09-16 17-13-02
Screenshot from 2022-09-16 17-20-41
Screenshot from 2022-09-16 13-57-26

The most representative is a comparison between the partial with baseline profile and partial compilation without baseline profile. The full pre-compilation represents the best possible performance which is available in 21 to 23 API levels by default. The no compilation mode represents the worst-case scenario which is not very realistic but gives the idea of how partial pre-compilation with baseline profile affects performance by itself.

Before library update and with only 10 tests iterations

image
image
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants