JVM学习笔记(一)——eclipse优化

Posted on 2016-04-04 14:53  Iltxy  阅读(226)  评论(0)    收藏  举报

  首先,eclipse.ini文件中主要参数说明:

1 -vmargs:       说明后面是VM的参数
2 -Xms384m:     JVM占系统最小内存  
3 -Xmx768m:    JVM占系统最大内存
4 -XX:PermSize: 最小堆大小(一般报内存不足时,都是说这个太小,堆空间剩余小于5%就会警告,大一点,不过要视自己机器内存大小来设置)
5 -XX:MaxPermSize:最大堆大小。这个也适当大些
  之前有一次,运行着自己的eclipse,打开自己的任务管理器;存行内存居然超过了1000MB。当时很吃惊;后来参考了别人写的博客,将startup and shutdown中不用的全部都关掉了;所占的运行内存才降低了不少!一般来说,可通过修改Xms属性;而且设置这个参数还很关键,如果过小的话,eclipseGC会很频繁而使得运行很慢,或者说直接崩掉了,而设的过大的话,运行时又会占很大的内存,一般128,384MB就够,除非项目过大,当然这依照具体情况而定;而Xmx参数是JVM占系统最大内存,设的稍大较好!而接下来的两个参数:XX:permSize和XX:MaxPermSize两个参数,一般设置相等,以免因所需堆空间超过XX:permSize而导致堆空间扩大带来的性能损失!因而XX:perSize和XX:MaxPermSize一般可设置的相对大些!
  最终,通过不断的修改这四个参数,结合GC日志,终于将eclipse运行时所占的内存给降了下来:一般所占590MB左右,峰值635MB左右;也算是降了一些!最终参入如下:
 1 笔记本参数:CPU:i5-4200U;主频:1.6GHZ;RAM:4G
 2 eclipse.ini参数: 
 3 -Xms384m 
 4 --JVM所占的最小内存
 5 -Xmx768m 
 6 --JVM所占的最大内存
 7 -Xloggc:gc.log
 8 --GC日志文件位置
 9 -XX:
10 +PrintGCTimeStamps
11 -XX:+PrintGCDetails
12 -XX:PermSize=410m
13 --最小堆内存
14 -XX:MaxPermSize=410m
15 --最大堆内存
  当然,以上只是做了Xms、Xmx、PermSize和MaxPermSize这四个参数的优化!还未涉及到StartUp And ShutDown、Validation等方面的优化!这儿有一篇别人写的博客,写的挺全面的!
  地址:http://www.importnew.com/13942.html!感谢这位博主的分享!

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3