
目的当然是使撸代码时更顺滑.
但从网上搜罗的大多数文章都只简单提到内存大小的配置, 一直没找到有系统介绍各项参数的.
另附:我正在使用的配置文件(综合了各家,本人不懂 JVM,也不知道目前这样合理否)
#堆栈设置 -Xms4096m -Xmx4096m -Xmn3072m -XX:MetaspaceSize=1024m -XX:MaxMetaspaceSize=1024m -XX:+AlwaysPreTouch -XX:InitialCodeCacheSize=1200m -XX:ReservedCodeCacheSize=1200m -XX:+UseCompressedOops -Dfile.encoding=UTF-8 # 采用何种垃圾回收参数 -XX:+UseConcMarkSweepGC -XX:ParallelGCThreads=4 -XX:SoftRefLRUPolicyMSPerMB=50 -ea # JIT 参数 -XX:CICompilerCount=2 -XX:TieredStopAtLevel=1 -XX:MaxInlineLevel=3 -XX:Tier4MinInvocatiOnThreshold=100000 -XX:Tier4InvocatiOnThreshold=110000 -XX:Tier4CompileThreshold=120000 -Dsun.io.useCanOnPrefixCache=false -Djava.net.preferIPv4Stack=true -Djdk.http.auth.tunneling.disabledSchemes="" -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Djdk.attach.allowAttachSelf -Xverify:none -XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log -XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof 1 qfdk PRO 加一条内存就好了 |
2 OysterQAQ 2020-12-03 23:13:26 +08:00 你都说你不懂 JVM 了为什么还搞呢 就调下堆内存吧 |
4 kingfalse 2020-12-03 23:42:52 +08:00 via Android 表示什么都没调,全部是默认的,配置 mbp 2018 i7 16 512 |
5 neoblackcap 2020-12-03 23:44:47 +08:00 事实证明,JVM 堆栈配 10G,上 SSD 硬盘,很快。 |
6 cubecube 2020-12-03 23:45:31 +08:00 贴一份我自用的吧,供各位大佬批判 -Xms1024m -Xmx2048m -XX:ReservedCodeCacheSize=320m -XX:+UseG1GC -XX:+UseCompressedOops -XX:G1HeapRegiOnSize=4m -XX:G1NewSizePercent=8 -XX:InitiatingHeapOccupancyPercent=40 -XX:G1ReservePercent=20 -XX:MaxGCPauseMills=100 -XX:+UseStringDeduplication -XX:+UseCompressedStrings -XX:+PerfDisableSharedMem -XX:+ParallelRefProcEnabled -ea -Xverify:none -XX:CICompilerCount=2 -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Dsun.io.useCanOnPrefixCache=false -Djdk.http.auth.tunneling.disabledSchemes="" -Djava.net.preferIPv4Stack=true -Djdk.attach.allowAttachSelf=true -Dkotlinx.coroutines.debug=off -Djdk.module.illegalAccess.silent=true -Dfile.encoding=UTF-8 -XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log -XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof |
7 summertimesad 2020-12-04 00:29:53 +08:00 via Android 64g 的 mbp 表示毫无鸭梨 |
8 sagaxu 2020-12-04 00:32:51 +08:00 via Android 你这是负优化 |
9 limuyan44 2020-12-04 01:11:00 +08:00 只会调个 Xms Xmx,怎么优化也不如插根内存条实在,真有明显的优化官方早就默认了。 |
10 chendy 2020-12-04 07:38:56 +08:00 因为不如 jb 更了解自己的产品特性,所以调整一下 Xms 和 Xmx 就差不多了 |
11 Finest 2020-12-04 07:48:27 +08:00 via Android 关键是大内存+ssd |
12 w292614191 2020-12-04 08:46:07 +08:00 也不知道从哪个 CSDN 复制的。 强行优化。 |
14 yalin 2020-12-04 08:56:06 +08:00 没操心过这事 |
15 szq8014 2020-12-04 09:03:44 +08:00 如果有,那 jb 出厂的时候肯定已经调得差不多了,就调个 xms xmx 就可以了 |
16 cheng6563 2020-12-04 09:19:04 +08:00 换 OpenJ9 的 JVM,内存使用能少一大截。 |
17 cco 2020-12-04 09:19:48 +08:00 默认足矣,最好是硬件上提升。 |
18 riggzh 2020-12-04 09:31:33 +08:00 via iPhone 64G 内存 我直接给了 32 |
19 LieNoWell 2020-12-04 10:01:22 +08:00 有跟我一样的么, 等它提示哪哪不够了然后在弹出的框框里面把值改大~~~ |
20 lyz1990 2020-12-04 10:15:10 +08:00 默认没觉得有什么问题 |
21 FantaMole 2020-12-04 10:30:42 +08:00 调半天不如在双十二的时候去京东买条什么酷兽,玖合那种 399 的 32G 内存,反正售后京东兜底。狠一点的,直接 4 个槽插满,上到 128G,5 年都不用考虑调优了 |
22 someonedeng 2020-12-04 11:35:51 +08:00 之前一直用 cms GC,时不时就 STW 几秒就很烦,不懂是 idea ( ver.2020.3 )还是 jvm (AdoptOpenJDK8)的问题。换了 G1 就没出现过可感的 STW 了 ``` -server -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=2048m -XX:+AlwaysPreTouch -Xms4g -Xmx8192m -XX:ReservedCodeCacheSize=512m -XX:+UseG1GC -XX:+UseStringDeduplication -XX:AutoBoxCacheMax=20000 -ea -Dsun.io.useCanOnCaches=false -Dsun.awt.keepWorkingSetOnMinimize=true -Djava.net.preferIPv4Stack=true -Djdk.http.auth.tunneling.disabledSchemes="" -Djsse.enablesSNIExtension=false -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Dfile.encoding=UTF-8 -XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log -XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof ``` |
23 sugars PRO 我 mac16 款 8G 256, Webstorm -Xms512m -Xmx3072m -XX:ReservedCodeCacheSize=240m -XX:+UseCompressedOops -Dfile.encoding=UTF-8 -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -ea -Dsun.io.useCanOnCaches=false -Djava.net.preferIPv4Stack=true -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -XX:ErrorFile=$USER_HOME/java_error_in_webstorm_%p.log -XX:HeapDumpPath=$USER_HOME/java_error_in_webstorm.hprof -Xbootclasspath/a:../lib/boot.jar 写前端没什么问题哈 |
24 AoEiuV020 2020-12-04 11:43:31 +08:00 网上 copy 再小改几条熟悉的, -server -Xms8G -Xmx8G -XX:NewSize=1024m -XX:MaxNewSize=1512m -XX:NewRatio=1 -XX:+UseParNewGC -XX:ParallelGCThreads=4 -XX:MaxTenuringThreshold=1 -XX:SurvivorRatio=8 -XX:+UseCodeCacheFlushing -XX:+UseConcMarkSweepGC -XX:+AggressiveOpts -XX:+CMSClassUnloadingEnabled -XX:+CMSIncrementalMode -XX:+CMSIncrementalPacing -XX:+CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=65 -XX:+CMSScavengeBeforeRemark -XX:+UseCMSInitiatingOccupancyOnly -XX:ReservedCodeCacheSize=64m -XX:-TraceClassUnloading -ea -Dsun.io.useCanOnCaches=false -Dfile.encoding=UTF-8 -Duser.language=en |
25 no1xsyzy 2020-12-04 12:36:53 +08:00 “撸代码时更顺滑” 是指? 你没 benchmark 你怎么调优? |
26 joysir 2020-12-04 12:48:38 +08:00 MacOS BigSur 下 IDEA 升级到最新版的话会发现窗口被放大了,可以使用以下参数回到原来的缩放级别: -Dsun.java2d.uiScale.enable=true -Dide.ui.scale=1 |
27 graffitist 2020-12-04 12:57:00 +08:00 有一点我不懂,撸代码的时候为什么要调 JVM ?强行优化? |
28 youla 2020-12-04 13:04:03 +08:00 小白:大佬能教我调个东西么? 大佬:调什么? 小白:调个 JB |
29 yahz 2020-12-04 14:23:03 +08:00 -Xms2048m -Xmx2048m -XX:ReservedCodeCacheSize=240m -XX:+UseG1GC -XX:MaxMetaspaceSize=2048m -XX:SoftRefLRUPolicyMSPerMB=50 -ea -XX:CICompilerCount=2 -Dsun.io.useCanOnPrefixCache=false -Djdk.http.auth.tunneling.disabledSchemes="" -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Djdk.attach.allowAttachSelf=true -Dkotlinx.coroutines.debug=off -Djdk.module.illegalAccess.silent=true -XX:+UseCompressedOops -Dfile.encoding=UTF-8 -XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log -XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof -Dide.no.platform.update=true 15 款 MBP,堆内存一样大避免自动扩缩容,用 G1GC 就完了,其他没动 |
30 jalena 2020-12-04 16:09:42 +08:00 还是堆硬件实在,一劳永逸! |