Eric Holk 12daf359e7 Add Layout Inflater Interactive Microbenchmark
This allows us to quickly test small changes in layout inflation performance.

TEST: mma &&
      adb install $OUT/system/app/startop_test_app/startop_test_app.apk;
      Run the app
Change-Id: I396157686d1e16ae2a7083a070fe1f622c05b15f
2019-11-15 17:09:02 +00:00
..

This directory contains a simple Android app that is meant to help in doing controlled startup performance experiments.

This app is structured as a number of activities that each are useful for a different aspect of startup testing.

Activities

EmptyActivity

This is the simplest possible Android activity. Starting this exercises only the system parts of startup without any app-specific behavior.

adb shell am start -n com.android.startop.test/.EmptyActivity

LayoutInflation

This activity inflates a reasonably complex layout to see the impact of layout inflation. The layout is supported by the viewcompiler, so this can be used for testing precompiled layout performance.

The activity adds an inflate#activity_main slice to atrace around the time spent in view inflation to make it easier to focus on the time spent in view inflation.

adb shell am start -n com.android.startop.test/.ComplexLayoutInflationActivity

NonInteractiveSystemServerBenchmark

This activity is for running microbenchmarks from the command line. Run as follows:

adb shell am start -W -n com.android.startop.test .NonInteractiveSystemServerBenchmarkActivity

It takes awhile (and there's currently no automated way to make sure it's done), but when it finishes, you can get the results like this:

adb shell cat /sdcard/Android/data/com.android.startop.test/files/benchmark.csv