背景

硬件:240固态硬盘、12G内存。
IDEA:启动时间 1分钟(手工测量误差2秒)
电脑的硬件更新已经很久了,记不得以前IDEA的启动时间,只是感觉IDEA启动的时间有点长,就上手了。

过程

修改配置

找到idea.vmoptions(idea.exe.vmoptions),有些还有64位的。我安装的版本64位,结果之前修改的都是32位的,内存显示没有任何的变化。如图(搜索工具listary)。

查看idea启动后的java环境变量 idea查看程序运行时间_启动时间


这是默认的参数配置:

查看idea启动后的java环境变量 idea查看程序运行时间_查看idea启动后的java环境变量_02

配置详情

A.配置文件
 IntelliJ IDEA\bin\idea64.exe.vmoptions
 B.配置信息
 //**jvm堆初始内存
 -Xms128m
 //**jvm堆最大可用内存
 -Xmx750m
 //**保留代码占用的内存容量
 -XX:ReservedCodeCacheSize=240m
 //**老年代使用CMS垃圾收集器
 -XX:+UseConcMarkSweepGC
 //**每兆堆空闲空间中SoftReference的存活时间
 -XX:SoftRefLRUPolicyMSPerMB=50
 -ea
 -Dsun.io.useCanonCaches=false
 -Djava.net.preferIPv4Stack=true
 //**JVM会在遇到OutOfMemoryError时生成“堆转储快照”
 -XX:+HeapDumpOnOutOfMemoryError
 //**禁用server模式下jvm检测到程序在重复抛一个异常时屏蔽该异常的功能
 -XX:-OmitStackTraceInFastThrow

优化对比

Xms(jvm堆初始化内存)和Xmx(jvm堆最大可用内存)是提升速度需要修改的最重要的两个参数,我一共尝试了四组数据:

查看idea启动后的java环境变量 idea查看程序运行时间_.net_03


查看idea启动后的java环境变量 idea查看程序运行时间_查看idea启动后的java环境变量_04


查看idea启动后的java环境变量 idea查看程序运行时间_查看idea启动后的java环境变量_05

查看idea启动后的java环境变量 idea查看程序运行时间_启动时间_06


尝试了这几种参数之后,我的速度有没有很明显的变化的?很遗憾,是没有什么大的变化的,上下相差都是几秒的变化,最终我把参数调成第2种了,可能是由于项目还不是足够大,目前已经够用了。

分析原因

为什么我的调试没有明显变化呢?简单分析一下原因,算是猜想,后续有时间了会更深入一些寻找什么原因。
1、相关服务启动所需在内存上已经被满足,通过扩大内存已经无法满足调优。
2、硬件受限。
3、也许可从IDEA启动时优化启动项来节约时间。

小工具拓展(VisualVM)

这是jvm在安装时自带的工具,可视化配置、监视、线程详情都可以在这里查看,大家可以自己看一下。我在测试的时候并没有使用它,当做拓展小知识了。

查看idea启动后的java环境变量 idea查看程序运行时间_查看idea启动后的java环境变量_07