Measure app startup impact after VM teardown

Add a host side test as part of MicrodroidTestCase which starts a
Microdroid VM that reserves 80% of the device's memory reported from
/proc/meminfo (MemFree - field) and touches all the allocated guest
memory with a tmpfs filesystem and successive copies from /dev/zero.
This step is necessary to create host stage2 fragmentation and we
measure a cold app startup time delta before and after we tear-down
the VM.

The following metrics will be reported during atest
AVFHostTestCase#testAppStartupTime:

app_startup/com.android.settings/total_time/before_vm
app_startup/com.android.settings/wait_time/before_vm
app_startup/com.android.settings/total_time/during_vm
app_startup/com.android.settings/wait_time/during_vm
app_startup/com.android.settings/total_time/after_vm
app_startup/com.android.settings/wait_time/after_vm

Bug: 236621823
Test: Verified localy using atest
Change-Id: Iede9d6f0507c8d7e56b3e32324441ff11e54fa1e
3 files changed
tree: ce0a878b2bb51b6373b30b553786970cc859b82c
  1. .prebuilt_info/
  2. apex/
  3. apkdmverity/
  4. authfs/
  5. avmd/
  6. compos/
  7. demo/
  8. docs/
  9. javalib/
  10. launcher/
  11. libs/
  12. microdroid/
  13. microdroid_manager/
  14. pvmfw/
  15. rialto/
  16. tests/
  17. virtualizationservice/
  18. vm/
  19. vmbase/
  20. vmclient/
  21. zipfuse/
  22. .clang-format
  23. .gitignore
  24. Android.bp
  25. OWNERS
  26. PREUPLOAD.cfg
  27. README.md
  28. TEST_MAPPING
README.md

Virtualization

This repository contains userspace services related to running virtual machines on Android, especially protected virtual machines. See the getting started documentation and Microdroid README for more information.