ART虚拟机参数说明

来源:互联网 发布:影像医疗软件代理 编辑:程序博客网 时间:2024/06/05 20:59

propertyJVM参数含义取值备注

dalvik.vm.checkjni || ro.kernel.android.checkjni

取true|false

-Xcheck:jni当调用jni函数时,打开jni检查  


-Xjnigreflimit:<N>设置JNI全局引用的最大数量整数,如2000 

dalvik.vm.execution-mode

取int:portable|int:fast|int:jit

-Xint:portable

-Xint:fast

-Xint:jit

指后端类型  dalvik.vm.stack-trace-filedalvik.vm.stack-trace-file   

dalvik.vm.check-dex-sum

取true|false

dalvik.vm.check-dex-sum   

log.redirect-stdio

取true|false

-Xlog-stdio将stdout/stderr输出定位到log  dalvik.vm.enableassertions-ea:<string>   dalvik.vm.jnioptsdalvik.vm.jniopts    -verbose:gc   dalvik.vm.heapstartsize-Xms堆栈开始大小4m dalvik.vm.heapsize-Xmx 16m  -XX:mainThreadStackSize=<N>K主线程解释模式下堆栈大小  dalvik.vm.jit.codecachesize-Xjitcodecachesize:设置jit code的大小。0表示关闭  dalvik.vm.heapgrowthlimit-XX:HeapGrowthLimit=   dalvik.vm.heapminfree-XX:HeapMinFree=   dalvik.vm.heapmaxfree-XX:HeapMaxFree=   dalvik.vm.heaptargetutilization-XX:HeapTargetUtilization=   dalvik.vm.nonmovingspace-XX:NonMovingSpaceCapacity=   

ro.config.low_ram

取true | false

-XX:LowMemoryMode   dalvik.vm.gctype-Xgc:   dalvik.vm.backgroundgctype-XX:BackgroundGC=   

dalvik.vm.dexopt-flags

v=n|r|a

o=n|v|a|f

m=y

if (v==n) dalvik.vm.dexopt-flags

if (v==r)-Xverify:remote

if (v==a) -Xverify:all

if (o==n) -Xdexopt:none

if (o==v) -Xdexopt:verified

if (o==a) -Xdexopt:all

if (o==f) -Xdexopt:full


if (m==y) {

-Xdexopt:full

-Xgc:precise

}

   dalvik.vm.lockprof.threshold-Xlockprofthreshold:   dalvik.vm.jit.op-Xjitop:对于特定的字节码,强制以解释模式执行  dalvik.vm.jit.methoddalvik.vm.jit.method对特定方法,强制以解释模式执行  

vold.decrypt

取值trigger_restart_min_framework|1

-Ximage-compiler-option

--compiler-filter=verify-none

跳过代码编译,以最新方式启动一个framework。用在data分区加密后输入密码  dalvik.vm.image-dex2oat-Xms-Xms   dalvik.vm.image-dex2oat-Xmx-Xmx   dalvik.vm.image-dex2oat-filter--compiler-filter=    

-Ximage-compiler-option

--image-classes=/system/etc/preloaded-classes

    

-Ximage-compiler-option

--compiled-classes=/system/etc/compiled-classes

   dalvik.vm.image-dex2oat-flags-Ximage-compiler-option   dalvik.vm.dex2oat-Xms    dalvik.vm.dex2oat-Xmx    dalvik.vm.extra-opts    dalvik.vm.profiler-Xenable-profiler   dalvik.vm.profile.start-immed-Xprofile-start-immediately   dalvik.vm.profile.period-secs-Xprofile-period:   dalvik.vm.profile.duration-secs-Xprofile-duration:   dalvik.vm.profile.interval-us-Xprofile-interval:   dalvik.vm.profile.backoff-coeff-Xprofile-backoff:   dalvik.vm.profile.top-k-thr-Xprofile-top-k-threshold:   dalvik.vm.profile.top-k-ch-thr-Xprofile-top-k-change-threshold:   dalvik.vm.profiler.type-Xprofile-type:   dalvik.vm.profile.stack-depth-Xprofile-max-stack-depth:   ro.dalvik.vm.native.bridge-XX:NativeBridge=             

ART中对参数的分解在ParsedOptions::Parse (runtime/parsed_options.cc)


-verbose:compiler|gc|heap|jdwp|jni|monitor|signals|startup|third-party-jni|threads|verifier


GC的几个重要参数

参数取值默认值-XX:ParallelGCThreads=<N>整数。并行GC的线程个数CPU核数-1.
这是定义除了主GC线程外的并行线程。对于单核来说,就是没有并行的GC线程。-Xms<N>kK|mM|gGheap初始化大小,单位可以是k, m, g。2M-Xms<N>kK|mM|gGheap初始化大小,单位可以是k, m, g。2M-Xmx<N>kK|mM|gGheap最大大小,单位可以是k, m, g。256M-XX:HeapMinFree=<N>kK|mM|gGheap最小free空间,单位可以是k, m, g。0.5M-XX:HeapMaxFree=<N>kK|mM|gGheap最大free空间,单位可以是k, m, g。2M-XX:NonMovingSpaceCapacity=<N>kK|mM|gGheap不可移动数据大小,单位可以是k, m, g。64M-XX:HeapTargetUtilization=(0.1-0.9)堆内存的利用率0.5-XX:ForegroundHeapGrowthMultiplier=heap增长乘数2.0-XX:ConcGCThreads=不暂停时GC线程数0


-Xbootclasspath:

-classpath 或-cp

-Ximage:  boot.art的地址。如 -Ximage:/data/dalvik-cache/arm64/boot.art

-Xss<N>K|M|G  定义线程栈的默认大小。如果调用java.lang.Thread.nativeCreate的时候堆栈传递0,则使用该值

-XX:LongPauseLogThreshold=<N> GC 停顿后输出gc log的最长时间。单位为ms

-XX:LongGCLogThreshold=<N>  GCLog输出的间隔。单位为ms

-XX:UseTLAB 有该标志时,表示使用线程本地分配策略(Thread Local Allocation Buffer),TLAB分配时可以避免线程同步。



anroid 5.1.1中,启动ART虚拟机的实际参数例子

-Xzygote-Xstacktracefile:/data/anr/traces.txtexitvfprintfsensitiveThread-verbose:gc-Xms8m-Xmx512m-XX:mainThreadStackSize=24K-XX:HeapGrowthLimit=256m-XX:HeapMinFree=512k-XX:HeapMaxFree=8m-XX:HeapTargetUtilization=0.75-XX:NonMovingSpaceCapacity=96m-agentlib:jdwp=transport=dt_android_adb,suspend=n,server=y-Ximage-compiler-option--runtime-arg-Ximage-compiler-option-Xms64m-Ximage-compiler-option--runtime-arg-Ximage-compiler-option-Xmx64m-Ximage-compiler-option--image-classes=/system/etc/preloaded-classes-Xcompiler-option--runtime-arg-Xcompiler-option-Xms64m-Xcompiler-option--runtime-arg-Xcompiler-option-Xmx512m-Duser.language=zh-Duser.region=CN


0 0
原创粉丝点击