zoukankan      html  css  js  c++  java
  • idea CPU过高问题

    亲测有效:CPU 从300%降到60%

    配置文件位置

    idea -> Help -> Edit Custom VM options

    具体参数配置

    #堆栈设置
    -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
    

     配置后重新启动idea
    其实大部分情况下 不是垃圾回收造成的cpu负载过高 而是由于JIT Compiler 及时编译将class文件编译成本地机器代码占用了大量的cpu资源导致的卡顿

    配置文件中这部分是控制 JIT compiler

    -XX:CICompilerCount=2
    -XX:TieredStopAtLevel=1
    -XX:MaxInlineLevel=3
    -XX:Tier4MinInvocationThreshold=100000
    -XX:Tier4InvocationThreshold=110000
    -XX:Tier4CompileThreshold=120000
    
    最后希望大家自己打开自己的jvisualVM来查看到底是什么导致了自己的idea卡顿的
    顺便说一下
    oracle-jdk 自带 jvisualVM
    open-jdk 没有的jvisualVM需要自己下载
     
    https://www.jianshu.com/p/ac72a14afc24
  • 相关阅读:
    poj 3253 Fence Repair (优先队列,哈弗曼)
    容斥原理 (转载)
    poj 1088 滑雪 DP(dfs的记忆化搜索)
    饭卡 01背包 + 贪心
    N分之一 竖式除法模拟
    poj2325 大数除法+贪心
    优先队列重载运算符< 以及初始化列表
    POJ 2718 Smallest Difference(贪心 or next_permutation暴力枚举)
    HASH算法
    字符串匹配算法——KMP算法
  • 原文地址:https://www.cnblogs.com/junbaba/p/14667330.html
Copyright © 2011-2022 走看看