baselineprofile |
|
|
BaselineProfileMacrobenchmark.kt |
A custom annotation used to identify Macrobenchmark tests for comparing Critical User Journeys
with and without baseline profiles.
All Macrobenchmark tests can be run in a flank configuration with:
test-targets:
- annotation org.mozilla.fenix.benchmark.BaselineProfileMacrobenchmark
Please remember to update [arm64-v8a-macrobenchmark.yml](https://searchfox.org/mozilla-central/source/mobile/android/test_infra/flank-configs/fenix/arm64-v8a-macrobenchmark.yml)
and any other use of this annotation if its name or package is changed.
|
861 |
BaselineProfilesBrowserJourneyBenchmark.kt |
This test class benchmarks the speed of completing a browser journey that does some web browsing.
Run this benchmark to verify how effective a Baseline Profile is. It does this by comparing
[CompilationMode.None], which represents the app with no Baseline Profiles optimizations, and
[CompilationMode.Partial], which uses Baseline Profiles.
Before running make sure `autosignReleaseWithDebugKey=true` is present in local.properties.
Run this benchmark to see startup measurements and captured system traces for verifying
the effectiveness of your Baseline Profiles. You can run it directly from Android
Studio as an instrumentation test that logs the benchmark metrics with links to the Perfetto traces,
or using the gradle command:
```
./gradlew :benchmark:connectedBenchmarkAndroidTest -P android.testInstrumentationRunnerArguments.annotation=org.mozilla.fenix.benchmark.baselineprofile -P benchmarkTest -P disableOptimization
```
The metric results will be in `benchmark/build/outputs/connected_android_test_additional_output` folder.
Run the benchmarks on a physical device, not an emulator because the emulator doesn't represent
real world performance and shares system resources with its host.
For more information, see the [Macrobenchmark documentation](https://d.android.com/macrobenchmark#create-macrobenchmark)
and the [instrumentation arguments documentation](https://d.android.com/topic/performance/benchmarking/macrobenchmark-instrumentation-args).
|
4616 |
BaselineProfilesLaunchIntentBenchmark.kt |
This test class benchmarks the speed of app startup when launching an intent. Run this benchmark
to verify how effective a Baseline Profile is. It does this by comparing [CompilationMode.None],
which represents the app with no Baseline Profiles optimizations, and [CompilationMode.Partial],
which uses Baseline Profiles.
Before running make sure `autosignReleaseWithDebugKey=true` is present in local.properties.
Run this benchmark to see startup measurements and captured system traces for verifying
the effectiveness of your Baseline Profiles. You can run it directly from Android
Studio as an instrumentation test that logs the benchmark metrics with links to the Perfetto traces,
or using the gradle command:
```
./gradlew :benchmark:connectedBenchmarkAndroidTest -P android.testInstrumentationRunnerArguments.annotation=org.mozilla.fenix.benchmark.baselineprofile -P benchmarkTest -P disableOptimization
```
The metric results will be in `benchmark/build/outputs/connected_android_test_additional_output` folder.
Run the benchmarks on a physical device, not an emulator because the emulator doesn't represent
real world performance and shares system resources with its host.
For more information, see the [Macrobenchmark documentation](https://d.android.com/macrobenchmark#create-macrobenchmark)
and the [instrumentation arguments documentation](https://d.android.com/topic/performance/benchmarking/macrobenchmark-instrumentation-args).
|
3461 |
BaselineProfilesOnboardingBenchmark.kt |
This test class benchmarks the speed of completing onboarding. Run this benchmark to verify how effective
a Baseline Profile is. It does this by comparing [CompilationMode.None], which represents the
app with no Baseline Profiles optimizations, and [CompilationMode.Partial], which uses Baseline Profiles.
Before running make sure `autosignReleaseWithDebugKey=true` is present in local.properties.
Run this benchmark to see startup measurements and captured system traces for verifying
the effectiveness of your Baseline Profiles. You can run it directly from Android
Studio as an instrumentation test that logs the benchmark metrics with links to the Perfetto traces,
or using the gradle command:
```
./gradlew :benchmark:connectedBenchmarkAndroidTest -P android.testInstrumentationRunnerArguments.annotation=org.mozilla.fenix.benchmark.baselineprofile -P benchmarkTest -P disableOptimization
```
The metric results will be in `benchmark/build/outputs/connected_android_test_additional_output` folder.
Run the benchmarks on a physical device, not an emulator because the emulator doesn't represent
real world performance and shares system resources with its host.
For more information, see the [Macrobenchmark documentation](https://d.android.com/macrobenchmark#create-macrobenchmark)
and the [instrumentation arguments documentation](https://d.android.com/topic/performance/benchmarking/macrobenchmark-instrumentation-args).
|
3452 |
BaselineProfilesStartupBenchmark.kt |
This test class benchmarks the speed of app startup. Run this benchmark to verify how effective
a Baseline Profile is. It does this by comparing [CompilationMode.None], which represents the
app with no Baseline Profiles optimizations, and [CompilationMode.Partial], which uses Baseline Profiles.
Before running make sure `autosignReleaseWithDebugKey=true` is present in local.properties.
Run this benchmark to see startup measurements and captured system traces for verifying
the effectiveness of your Baseline Profiles. You can run it directly from Android
Studio as an instrumentation test that logs the benchmark metrics with links to the Perfetto traces,
or using the gradle command:
```
./gradlew :benchmark:connectedBenchmarkAndroidTest -P android.testInstrumentationRunnerArguments.class=org.mozilla.fenix.benchmark.BaselineProfilesStartupBenchmark -P benchmarkTest
```
The metric results will be in `benchmark/build/outputs/connected_android_test_additional_output` folder.
Run the benchmarks on a physical device, not an emulator because the emulator doesn't represent
real world performance and shares system resources with its host.
For more information, see the [Macrobenchmark documentation](https://d.android.com/macrobenchmark#create-macrobenchmark)
and the [instrumentation arguments documentation](https://d.android.com/topic/performance/benchmarking/macrobenchmark-instrumentation-args).
|
3087 |
utils |
|
|