Update boot image and system server profiles
This is a conservative tuning for the last profile update (commit
5b70220fb5) which regressed a few metrics
(b/130553966). The numbers below are quoated relative to the sate before
that update.
=Perf numbers=
The boot image compilation artifacts are 17MiB smaller (art/vdex/oat for
arm and arm64).
System server .art file is 100KiB smaller.
Startup and memory number are within the noise. Startup shows 0.72%
improvement. However that's most likely noise. The tests were run with:
- atest google/perf/app-startup/hermetic-apps/cold-dropcache-lock-test
- atest google/perf/app-startup/non-hermetic-apps/cold-dropcache-lock-test
- atest google/perf/memory/memory-test
- atest
google/perf/app-startup/benchmark-app-hermetic/cold-dropcache-lock-test
- atest
google/perf/app-startup/third-party-apps/cold-dropcache-stable-test
=Profile metrics=
Boot:
- methods and classes used by at least 9% of the sampled (non unique)
applications (see below for more explanations)
- 1.13% of hot methods added, 33.77% removed
- 0.65% of classes added, 21.61% removed
- 29256 hot methods in the profile (vs 43429 in the old one)
- 8681 classes in the profile (vs 10985 in the old one)
Preloaded clases:
- classes used by at least 20% of sampled applications during startup
- 1.5% added, 0.3% removed
- 7601 classes in the profile (vs 7516 in the old one)
System server:
- methods and classes used on at least 5% of sampled devices
- system server is speed compile and the image classes are the most
relevant
- 4% classes added, 23% of classes removed
- 2819 classes in the profile (vs 3418 in the old one)
=Data sample=
- 35000+ (non unique) applications contributed to the final profile
- these were spread across 4000+ (non unique) devices
- 'non unique' means that the same app or the same device (or a
combination of both) could have contributed to the final profile multiple
times
Bug: 122068885
Bug: 130553966
Test: m, build, boot, atest startup-tests
Change-Id: Ic61ed2784af034ed4ae4bc8346ed67c6bed04152
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -2961,6 +2961,7 @@ android.permission.IPermissionController$Stub$Proxy
|
||||
android.permission.IPermissionController
|
||||
android.permission.PermissionControllerManager$RemoteService
|
||||
android.permission.PermissionControllerManager
|
||||
android.permission.PermissionManager$SplitPermissionInfo
|
||||
android.preference.Preference$OnPreferenceChangeListener
|
||||
android.preference.Preference
|
||||
android.preference.PreferenceActivity
|
||||
@@ -5551,6 +5552,9 @@ com.android.phone.ecc.nano.WireFormatNano
|
||||
com.android.server.NetworkManagementSocketTagger$1
|
||||
com.android.server.NetworkManagementSocketTagger$SocketTags
|
||||
com.android.server.NetworkManagementSocketTagger
|
||||
com.android.server.SystemConfig$PermissionEntry
|
||||
com.android.server.SystemConfig$SharedLibraryEntry
|
||||
com.android.server.SystemConfig
|
||||
com.android.server.sip.SipService
|
||||
com.android.server.sip.SipWakeupTimer
|
||||
com.google.android.collect.Lists
|
||||
|
||||
Reference in New Issue
Block a user