IDEA 2021 CPU 超100% 问题解决

2023-10-20 09:58:49 浏览数 (2)

用了IDEA 2021之后cpu超过200,打开一个类文件就卡住一会,起初以为是语法检查的问题,把所有语法检查一个不留全关闭,还是没解决。

最终解决方式,配置IDEA 的JVM参数:

代码语言:javascript复制
#堆栈设置
-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

立杆见影,原因不是垃圾回收造成的cpu负载过高 而是由于JIT Compiler 及时编译将class文件编译成本地机器代码占用了大量的cpu资源导致的卡顿。

具体请参考国外idea bug追踪他们的idea cpu 100% 讨论 https://youtrack.jetbrains.com/issue/IDEA-207243

参考:https://www.jianshu.com/p/ac72a14afc24

0 人点赞