IDEA分析CPU
Idea 自带分析工具地址:Help->Diagnostic tools-> Activity Monitor…
可以看到JIT编译占用比较高的CPU
JIT编译导致CPU暴涨
配置文件中这部分是控制 JIT compiler
1 2 3 4 5 6
| -XX:CICompilerCount=2 -XX:TieredStopAtLevel=1 -XX:MaxInlineLevel=3 -XX:Tier4MinInvocationThreshold=100000 -XX:Tier4InvocationThreshold=110000 -XX:Tier4CompileThreshold=120000
|
具体请参考国外idea bug追踪他们的idea cpu 100% 讨论
https://youtrack.jetbrains.com/issue/IDEA-207243
IDEA JVM配置
IDEA 分两个配置文件,一个在app,一个在用户下。首先加载的app下的配置文件
1 2 3 4
| # app /Applications/IntelliJ IDEA.app/Contents/bin # 用户 ~/Library/Application Support/JetBrains/IntelliJIdea2022.1
|
idea JVM配置信息
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| #堆栈设置 -Xms6144m -Xmx6144m -Xmn5125m -XX:MetaspaceSize=1024m -XX:MaxMetaspaceSize=1024m -XX:+AlwaysPreTouch -XX:InitialCodeCacheSize=1200m -XX:ReservedCodeCacheSize=1200m -XX:+UseCompressedOops -Dfile.encoding=UTF-8
# 采用何种垃圾回收参数 -XX:+IgnoreUnrecognizedVMOptions -XX:+UseG1GC -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
|