Jetbrains 系的 IDE 的 JVM 配置存在多大的调优空间? 可否分享你们的配置? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
dioxide
V2EX    程序员

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

  •  
  •   dioxide 2020-12-03 20:44:28 +08:00 5331 次点击
    这是一个创建于 1856 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

    另附:我正在使用的配置文件(综合了各家,本人不懂 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 
    30 条回复    2020-12-04 16:09:42 +08:00
    qfdk
        1
    qfdk  
    PRO
       2020-12-03 22:54:00 +08:00
    加一条内存就好了
    OysterQAQ
        2
    OysterQAQ  
       2020-12-03 23:13:26 +08:00
    你都说你不懂 JVM 了为什么还搞呢 就调下堆内存吧
    dioxide
        3
    dioxide  
    OP
       2020-12-03 23:27:03 +08:00   1
    @OysterQAQ 所以才来问问大家,看熟悉 JVM 的人都是怎么配置的啊
    kingfalse
        4
    kingfalse  
       2020-12-03 23:42:52 +08:00 via Android
    表示什么都没调,全部是默认的,配置 mbp 2018 i7 16 512
    neoblackcap
        5
    neoblackcap  
       2020-12-03 23:44:47 +08:00
    事实证明,JVM 堆栈配 10G,上 SSD 硬盘,很快。
    cubecube
        6
    cubecube  
       2020-12-03 23:45:31 +08:00   2
    贴一份我自用的吧,供各位大佬批判


    -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
    summertimesad
        7
    summertimesad  
       2020-12-04 00:29:53 +08:00 via Android
    64g 的 mbp 表示毫无鸭梨
    sagaxu
        8
    sagaxu  
       2020-12-04 00:32:51 +08:00 via Android
    你这是负优化
    limuyan44
        9
    limuyan44  
       2020-12-04 01:11:00 +08:00
    只会调个 Xms Xmx,怎么优化也不如插根内存条实在,真有明显的优化官方早就默认了。
    chendy
        10
    chendy  
       2020-12-04 07:38:56 +08:00
    因为不如 jb 更了解自己的产品特性,所以调整一下 Xms 和 Xmx 就差不多了
    Finest
        11
    Finest  
       2020-12-04 07:48:27 +08:00 via Android
    关键是大内存+ssd
    w292614191
        12
    w292614191  
       2020-12-04 08:46:07 +08:00
    也不知道从哪个 CSDN 复制的。

    强行优化。
    w292614191     13
    w292614191  
       2020-12-04 08:50:55 +08:00   1
    如果多服务卡,你可以配置每个 JVM 的最大内存。

    https://pic.downk.cc/item/5fc987c7394ac52378c2ed30.png
    yalin
        14
    yalin  
       2020-12-04 08:56:06 +08:00
    没操心过这事
    szq8014
        15
    szq8014  
       2020-12-04 09:03:44 +08:00
    如果有,那 jb 出厂的时候肯定已经调得差不多了,就调个 xms xmx 就可以了
    cheng6563
        16
    cheng6563  
       2020-12-04 09:19:04 +08:00   1
    换 OpenJ9 的 JVM,内存使用能少一大截。
    cco
        17
    cco  
       2020-12-04 09:19:48 +08:00
    默认足矣,最好是硬件上提升。
    riggzh
        18
    riggzh  
       2020-12-04 09:31:33 +08:00 via iPhone
    64G 内存 我直接给了 32
    LieNoWell
        19
    LieNoWell  
       2020-12-04 10:01:22 +08:00   1
    有跟我一样的么,
    等它提示哪哪不够了然后在弹出的框框里面把值改大~~~
    lyz1990
        20
    lyz1990  
       2020-12-04 10:15:10 +08:00
    默认没觉得有什么问题
    FantaMole
        21
    FantaMole  
       2020-12-04 10:30:42 +08:00
    调半天不如在双十二的时候去京东买条什么酷兽,玖合那种 399 的 32G 内存,反正售后京东兜底。狠一点的,直接 4 个槽插满,上到 128G,5 年都不用考虑调优了
    someonedeng
        22
    someonedeng  
       2020-12-04 11:35:51 +08:00   1
    之前一直用 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
        23
    sugars  
    PRO
       2020-12-04 11:38:47 +08:00   1
    我 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
        24
    AoEiuV020  
       2020-12-04 11:43:31 +08:00   1
    网上 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
        25
    no1xsyzy  
       2020-12-04 12:36:53 +08:00
    “撸代码时更顺滑” 是指?
    你没 benchmark 你怎么调优?
    joysir
        26
    joysir  
       2020-12-04 12:48:38 +08:00   1
    MacOS BigSur 下 IDEA 升级到最新版的话会发现窗口被放大了,可以使用以下参数回到原来的缩放级别:

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

    大佬:调什么?

    小白:调个 JB
    yahz
        29
    yahz  
       2020-12-04 14:23:03 +08:00   1
    -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
        30
    jalena  
       2020-12-04 16:09:42 +08:00
    还是堆硬件实在,一劳永逸!
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1231 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World ispowered by solitude
    VERSION: 3.9.8.5 34ms UTC 17:01 PVG 01:01 LAX 09:01 JFK 12:01
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86