极致优化 IDEA 启动速度(本文内容过于硬核)( 二 )


接着我想如果直接把最小堆也设置成 2G, 那么堆大小就无需扩容 , 会不会有更加正向的影响?
修改后的配置如下:
-Xms2g-Xmx2g-XX:ReservedCodeCacheSize=240m-XX:+UseConcMarkSweepGC-XX:SoftRefLRUPolicyMSPerMB=50-Xverify:noneGC 情况:
极致优化 IDEA 启动速度(本文内容过于硬核)文章插图
概览情况:
极致优化 IDEA 启动速度(本文内容过于硬核)文章插图
实际上并没有什么太大成效 。
从概览中可以看到 , 我当前版本的 IDEA 使用的是自带的 JDK11 :
极致优化 IDEA 启动速度(本文内容过于硬核)文章插图
JDK11 中是有 G1 收集器的 , 我要么开启 G1 试一下:
-Xms1g-Xmx2g-XX:ReservedCodeCacheSize=240m-XX:+UseG1GC-XX:SoftRefLRUPolicyMSPerMB=50-Xverify:noneGC 情况:
极致优化 IDEA 启动速度(本文内容过于硬核)文章插图
概览情况:
极致优化 IDEA 启动速度(本文内容过于硬核)文章插图
看起来好像 Minor GC 的耗时还略有上涨 , 并且 GC 的次数从 9 次变成了 19 次 。
不过看到概览图发现了一个更神奇的事情 , 当使用 G1 的时候 , 整个使用堆大小竟然没有突破 1G, 看来电脑内存不够大的同学更加推荐使用 G1 回收器 , 虽然 GC 的耗时稍有增加 , 不过能减少内存的使用 , 而 G1 的 GC 机制又是大量并行的 , 这点根本无伤大雅 。
最后我放一下我修改后的整体的配置:
-Xms1g-Xmx2g-XX:ReservedCodeCacheSize=240m-XX:+UseG1GC-XX:SoftRefLRUPolicyMSPerMB=50-Xverify:none-ea-XX:CICompilerCount=2-Dsun.io.useCanonPrefixCache=false-Djdk.http.auth.tunneling.disabledSchemes=""-XX:+HeapDumpOnOutOfMemoryError-XX:-OmitStackTraceInFastThrow-Dkotlinx.coroutines.debug=off-Djdk.module.illegalAccess.silent=true-Dide.no.platform.update=true-Djdk.attach.allowAttachSelf=true-Didea.plugins.path=D:\\Program Files\\JetBrains\\apps\\IDEA-U\\ch-0\\202.7660.26.plugins【极致优化 IDEA 启动速度(本文内容过于硬核)】当然 , 如果不用 IDEA 的同学 , 只要是用 Jetbrain 全家桶套件 , 例如写 Python 最常用的 Pycharm, 同样也可以按照本文的方式进行配置 , 我自己又给 Pycharm 修改了一下配置 , 启动速度绝对大幅提升 , 肉眼可见的那种 。