IDEA的CPU占用率高问题解决方法
前言:这段时间发现 IDEA 的 CPU 占用率猛涨,时不时就飙升到百分之7、80,使得敲代码的体验感十分不佳,在经过一番查找之后终于解决了问题,在此记录一下
IDEA的CPU占用率高问题解决方法
问题定位
我们先定位一下为什么IDEA的CPU占用率会变高。
- 电脑内存不足?
这个问题我在19年也遇到过,那时候的 8G 内存属实不太能带的动 IDEA ,开了IDEA 后 CPU 基本上都是在疯狂跑,然后我换了内存条之后才好转了,但是这次明显不是,因为我换成 32G 的内存之后还是没有好转… - 安装的插件过多?
这个是网上的说法,但是我其实没安装什么插件,所以也排除 - 代码检查的问题?
这个也是网上大佬的说法,但是我关闭了一部分不必要的代码检查之后,CPU 占用率也没有下来…
额,好像陷入了僵局,于是我打开监控,查看是哪个部分的 CPU 占用率高
打开监控
监控内容
结果出乎我的意料,从上图可以看到,JIT(即时编辑)占了大头,这也解释了为什么每当我在修改新的代码文件的内容时 CPU 占用率飙升,因为 JIT Compiler 即时编译将 class 文件编译成本地机器代码占用了大量的 CPU 资源导致的卡顿,这下子问题找到了,该研究解决办法了。
解决方法
知道了是 JIT 的锅之后,我们该思考怎么解决它,我在网上参考了一篇博客修改了 JVM 的配置,如下图:
JVM 配置信息
这里我参考了大佬对 JIT 部分的设置,不过大佬没有在博客说明这些参数的意思,我在这里说明一下:
# 堆栈设置-Xms2048m
-Xmx4096m
-Xverify:none
-XX:+DisableExplicitGC
-XX:ReservedCodeCacheSize=720m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow# JIT 参数# 设置用于编译的编译器线程数
-XX:CICompilerCount=2
# 开启分层编译
-XX:TieredStopAtLevel=1
# 控制最大数量嵌套调用内联
-XX:MaxInlineLevel=3
# 即时编译的东西(没弄懂...)
-XX:Tier4MinInvocationThreshold=100000
-XX:Tier4InvocationThreshold=110000
-XX:Tier4CompileThreshold=120000
-XX:CICompilerCount
默认情况下,server JVM的线程数设置为2,clientJVM的线程数设置为1,如果使用分层编译,则线程数将缩放为内核数
-XX:TieredStopAtLevel
开启分层编译
-XX:MaxInlineLevel
默认值为9,控制最大数量嵌套调用内联。
修改后的 CPU 占用率,如下图:
可以看到 IDEA的 CPU 占用率显著下降。
参考博客:
intellij idea cpu占用率太大太满 运行速度太慢 使了五个解决方法最终成功
idea运行cpu100%配置
PS:可以到我的个人博客查看更多内容
个人博客地址:小关同学的博客
相关文章:

消息队列之库存扣减
转载于:https://www.cnblogs.com/work-at-home-helloworld/p/5230894.html

2022-2028年中国钢铁冶炼行业市场研究及前瞻分析报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国钢铁冶炼行业市场行业相关概述、中国钢铁冶炼行业市场行业运行环境、分析了中国钢铁冶炼行…

Microsoft Build 2015
没本事去旧金山,只能默默的守在笔记本前看了…… 首先Azure在全球有19个数据中心了,终于超过亚马逊了,好样的!过去12个月Azure有超过500个新功能上线,每月用户增长9万。Azure将会越来越成熟了,只可惜我现在…

开源飞控PX4简介
介绍: https://docs.px4.io/master/zh/flight_controller/pixhawk4.html无人机飞控基本装配参考: https://docs.px4.io/master/zh/assembly/下载地面站链接(QGC地面站): http://qgroundcontrol.com/downloads/

Unity视觉效果图初学教程 Unity Visual Effects Graph for Beginners
面向初学者的Unity视觉效果图介绍 你会学到: 学生将学习使用视觉效果图来创建效果 MP4 |视频:h264,1280720 |音频:AAC,44.1 KHz,2 Ch 语言:英语中英文字幕(根据原英文字幕机译更准确) |时长:39节课(4h 42m…

nonatomic, retain,weak,strong用法详解
strong weak strong与weak是由ARC新引入的对象变量属性ARC引入了新的对象的新生命周期限定,即零弱引用。如果零弱引用指向的对象被deallocated的话,零弱引用的对象会被自动设置为nil。property(strong) MyClass *myObject;相当于property(retain) MyClas…

“ Error:(1, 1) java: 非法字符: ‘\ufeff‘ ”错误的解决方法
前言:今天为了做作业,在 github 上面下载了个项目,然后在运行项目时发现报错,在此记录一下 “ Error:(1, 1) java: 非法字符: ‘\ufeff’ ”错误的解决方法 发生原因 这个项目从目录的结构可以很明显地看出是使用 Eclipse 开发的…

2022-2028年中国钢铁电商产业竞争现状及发展前景预测报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国钢铁电商行业市场行业相关概述、中国钢铁电商行业市场行业运行环境、分析了中国钢铁电商行…

java开发webservice的几种方式
为什么80%的码农都做不了架构师?>>> webservice的应用已经越来越广泛了,下面介绍几种在Java体系中开发webservice的方式,相当于做个记录。 1.Axis2 Axis是apache下一个开源的webservice开发组件,出现的算是比较早了&a…

改变gazebo背景颜色
修改这里:

【Unity教程】创建一个完整的驾驶游戏
专业游戏设计 你会学到什么 在unity HDRP创建一个完整的驾驶游戏 定制不同类型的汽车 将人工智能汽车和人工智能航路点系统添加到你的赛道上 添加汽车展厅菜单以解锁和购买新车 在Blender中设计自己的赛道 易于理解的编码使游戏工作 流派:电子学习| MP4 |视频:h264,…

哈夫曼编译码器
前言:又到了学校一年一度的数据结构课设的日子,经不住学弟学妹热心地“询问”我数据结构课设的内容,我就在这里把我之前数据结构课设做的东西总结一下 哈夫曼编译码器 我课设选择的题目是哈夫曼编译码器,类似于我们平时用的解压缩…

Codeforces 629D Babaei and Birthday Cake(树状数组优化dp)
题意: 线段树做法 分析: 因为每次都是在当前位置的前缀区间查询最大值,所以可以直接用树状数组优化。比线段树快了12ms~ 代码: #include<cstdio> #include<cmath> #include<iostream> #include<algorithm>…

2022-2028年中国钢筘行业市场研究及前瞻分析报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国钢筘行业市场行业相关概述、中国钢筘行业市场行业运行环境、分析了中国钢筘行业市场行业的…
控制台绘制正切曲线
前面介绍了:控制台绘制正弦/余弦曲线 , 控制台绘制正弦曲线和余弦曲线同时显示 下面来看看正切曲线吧,其实也都差不多…… #include <stdio.h> #include <math.h>int main() {double y;int x,k;for(y10;y>-10;y--){katan(y)*7;if(k>0)…

PX4多机ros仿真报错
出现报错: 缺少配置文件,需要添加路径到文件中; 在根目录下打开终端输入: 出现下面一个界面:(蓝色是我添加的) 保存退出; 重新进行刚开始的操作: 使用默认的.launc…

Unity创建2D动作RPG游戏 Create Action 2D RPG Game in Unity
在Unity中创建动作2D RPG游戏 大小解压后:5.69G 时长10h 包含 Udemy Game Asset.unitypackage 源文件 1280X720 MP4 语言:英语中英文字幕(根据原英文字幕机译更准确) 你会学到什么 学习基础来提升C#, 为远程和特殊攻击…

Nginx学习4:负载均衡实例
Nginx配置实例-负载均衡 目标 在浏览器地址栏输入地址 http://192.168.126.131:8080/edu/a.html,负载均衡效果,平均分配到 8080 和 8081 端口中 准备工作 (1)准备两台 tomcat 服务器,一台 8080,一台 80…

2016030204 - git和github结合
1.下载和安装git客户端 参考:http://www.cnblogs.com/zhtzyh2012/p/5232291.html 2.github上创建项目 参考:http://www.cnblogs.com/zhtzyh2012/p/5233495.html 3.密钥相关信息设置 参考:http://www.cnblogs.com/zhtzyh2012/p/5233630.html 4…

2022-2028年中国钢化玻璃行业市场研究及前瞻分析报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国钢化玻璃行业市场行业相关概述、中国钢化玻璃行业市场行业运行环境、分析了中国钢化玻璃行…

nginx如何解决超长请求串
nginx是一个强大的http服务器,但是在使用过程中发现,当遇到超长的post请求或者get请求时,nginx会返回413、400、414等状态码,这是因为请求串长度超过了nginx默认的缓存大小或者请求串大小,那么我们需要怎么样来解决这些…

ubuntu安装qwt出现错误时"mkdir: 无法创建目录“/usr/local/qwt-6.1.3“: 权限不够"
报错: 在root用户下执行操作,参考链接安装qwt

Unity 2021人工智能导论 Introduction to Artificial Intelligence in Unity 2021
学习视频游戏开发中最常用的人工智能技术的基础知识。 你会学到什么 了解如何使用有限状态机 学习行为树的基础知识 了解如何实现阿斯塔寻路算法 了解如何在游戏中实现传感器 了解如何创建GOAP系统 了解植绒的基本知识 流派:电子学习| MP4 |视频:h264,1280720 |音频…

HikariPool 连接池问题
前言:今天在一个项目运行的时候发现一个很奇怪的问题,当我有一段时间无操作之后再进行插入操作的话,就会出现HikariPool相关的报错,在此记录一下 问题 2022-02-20 13:14:04.178 WARN 4012 --- [nio-8888-exec-6] com.zaxxer.hik…

谈谈对web标准的理解
Web标准不是某一个标准,而是由一系列标准组合而成。网页主要由三部分组成:结构、表现和行为。对应的标准也分三方面:结构化标准语言主要包括XHTML和HTML以及XML,表现标准语言主要包括CSS,行为标准主要包括对象模型&…

2022-2028年中国二次供水设备行业研究及前瞻分析报告
【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国二次供水设备行业市场行业相关概述、中国二次供水设备行业市场行业运行环境、分析了中国二…

linux磁盘配额管理
linux-用户磁盘配额磁盘配额就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间磁盘配额可以限制指定账户能够使用的磁盘空间,这样可以避免因某个用户的过度使用磁盘空间造成其他用户无法正常工作甚至影响系统运行。在服…

终端打不开(右键和快捷键)?因为phthon?
参考连接:https://www.cnblogs.com/dolphi/p/3622570.html 在总的环境变量中删除掉LC_ALL这一项,重新启动后即可恢复以及打开终端; 具体怎么操作:是师兄帮弄的,没看清楚怎么操作!

Unity从头到尾无代码游戏制作学习教程
制作没有代码的游戏 Unity中的主视觉脚本! 流派:电子学习| MP4 |视频:h264,1280720 |音频:AAC,48.0 KHz 语言:英语中英文字幕(根据原英文字幕机译更准确)|大小解压后:26.2 GB 含课程文件|时长:21小时 11分…

经常使用ARM汇编指令
一面学习,一面总结,一面记录。 以下是整理在网上找到的一些资料,简单整理记录一下,方便以后查阅。 ARM处理器的指令集能够分为跳转指令、数据处理指令、程序状态寄存器(PSR)处理指令、载入/存储指令、协处理…