Jetbrains 系的 IDE 的 JVM 配置存在多大的调优空间? 可否分享你们的配置?

2020-12-03 20:44:28 +08:00
 dioxide

目的当然是使撸代码时更顺滑.

但从网上搜罗的大多数文章都只简单提到内存大小的配置, 一直没找到有系统介绍各项参数的.

另附:我正在使用的配置文件(综合了各家,本人不懂 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
4620 次点击
所在节点    程序员
30 条回复
FantaMole
2020-12-04 10:30:42 +08:00
调半天不如在双十二的时候去京东买条什么酷兽,玖合那种 399 的 32G 内存,反正售后京东兜底。狠一点的,直接 4 个槽插满,上到 128G,5 年都不用考虑调优了
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
```
sugars
2020-12-04 11:38:47 +08:00
我 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

写前端没什么问题哈
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
no1xsyzy
2020-12-04 12:36:53 +08:00
“撸代码时更顺滑” 是指?
你没 benchmark 你怎么调优?
joysir
2020-12-04 12:48:38 +08:00
MacOS BigSur 下 IDEA 升级到最新版的话会发现窗口被放大了,可以使用以下参数回到原来的缩放级别:

-Dsun.java2d.uiScale.enable=true
-Dide.ui.scale=1
graffitist
2020-12-04 12:57:00 +08:00
有一点我不懂,撸代码的时候为什么要调 JVM ?强行优化?
youla
2020-12-04 13:04:03 +08:00
小白:大佬能教我调个东西么?

大佬:调什么?

小白:调个 JB
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 就完了,其他没动
jalena
2020-12-04 16:09:42 +08:00
还是堆硬件实在,一劳永逸!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/731893

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX