Merge "Add madvising of .odex, .vdex and .art files" am: fcf61e805a am: 876927e795 am: 252a7a0f4f

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1611231

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I9d95090140d41f11fc996622c3787a2950194205
This commit is contained in:
Jagadeesh Pakaravoor
2021-03-12 21:32:04 +00:00
committed by Automerger Merge Worker

View File

@@ -637,6 +637,12 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv, bool zygote, bool p
char saveResolvedClassesDelayMsOptsBuf[
sizeof("-Xps-save-resolved-classes-delay-ms:")-1 + PROPERTY_VALUE_MAX];
char madviseRandomOptsBuf[sizeof("-XX:MadviseRandomAccess:")-1 + PROPERTY_VALUE_MAX];
char madviseWillNeedFileSizeVdex[
sizeof("-XMadviseWillNeedVdexFileSize:")-1 + PROPERTY_VALUE_MAX];
char madviseWillNeedFileSizeOdex[
sizeof("-XMadviseWillNeedOdexFileSize:")-1 + PROPERTY_VALUE_MAX];
char madviseWillNeedFileSizeArt[
sizeof("-XMadviseWillNeedArtFileSize:")-1 + PROPERTY_VALUE_MAX];
char gctypeOptsBuf[sizeof("-Xgc:")-1 + PROPERTY_VALUE_MAX];
char backgroundgcOptsBuf[sizeof("-XX:BackgroundGC=")-1 + PROPERTY_VALUE_MAX];
char heaptargetutilizationOptsBuf[sizeof("-XX:HeapTargetUtilization=")-1 + PROPERTY_VALUE_MAX];
@@ -844,6 +850,22 @@ int AndroidRuntime::startVm(JavaVM** pJavaVM, JNIEnv** pEnv, bool zygote, bool p
*/
parseRuntimeOption("dalvik.vm.madvise-random", madviseRandomOptsBuf, "-XX:MadviseRandomAccess:");
/*
* Use default platform configuration as limits for madvising,
* when no properties are specified.
*/
parseRuntimeOption("dalvik.vm.madvise.vdexfile.size",
madviseWillNeedFileSizeVdex,
"-XMadviseWillNeedVdexFileSize:");
parseRuntimeOption("dalvik.vm.madvise.odexfile.size",
madviseWillNeedFileSizeOdex,
"-XMadviseWillNeedOdexFileSize:");
parseRuntimeOption("dalvik.vm.madvise.artfile.size",
madviseWillNeedFileSizeArt,
"-XMadviseWillNeedArtFileSize:");
/*
* Profile related options.
*/