`

Eclipse的JVM参数设置

阅读更多

为了找到Eclipse JVM的最优设置,我反复研究反复试验,以下是我找到的最优设置:

-vmargs -XX:+UseParallelGC

我的系统环境是双核+Windows+JDK6.0+Eclipse。

以上参数在命令行下启动Eclipse也是可用的。接下来我们讨论一下 JDK6.0 中垃圾回收器的”ergonomics”特性,这个特性可以使JVM实现自动控制。这个特性仅仅在使用UseParallelGC collector (也被称为parallel scavenge collector)的时候会被激活。注意使用该特性的时候无需通过-XmxNNNm 来设置堆空间。根据相关的资料,任何其他的参数设置都会使 JVM 无法实现自动控制。因为只要我们设置了其他参数,JVM就会使用我们的参数设置而忽略自身的”ergonomics”特性(JVM以为我们更了解其内在的 机制,其实不然)。

如何想查看垃圾回收器的日志信息,我们可以使用以下的参数(不要换行)设置将日志信息输出到指定的文件中:

-vmargs -Xloggc:c:tempe.txt -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintTenuringDistribution -verbose:gc -XX:+UseParallelGC

原文:

In my neverending quest to find the best JVM settings for running Eclipse I’ve been pouring over talks and papers given by Sun engineers and trying different things. Here are the best options that I’ve found so far for my 2-processor Windows machine running JDK6.0 and Eclipse3.4:

-vmargs -XX:+UseParallelGC

These go on the Eclipse executable’s command line. What I’m doing here is taking advantage of the JDK5.0 garbage collection “ergonomics” feature to let the JVM self tune. It’s only active with the UseParallelGC collector (also called the parallel scavenge collector). Note there is no -XmxNNNm option to set the heap size. According to the doc, any sizing or tweaking options will disable self tuning because it figures we know better than it does (it doesn’t know us very well does it?).

If you want to see what the garbage collector is doing you could add more printing options like this (all on one line) to dump some logging information to a file that you can view or process later:

-vmargs -Xloggc:c:tempe.txt -XX:+PrintGCDetails -XX:+PrintGCTimeStamps
-XX:+PrintTenuringDistribution -verbose:gc -XX:+UseParallelGC

分享到:
评论

相关推荐

    设置Eclipse的JVM参数

    设置Eclipse的JVM参数

    eclipse中对jvm进行设置

    你对Eclipse中JVM内存设置方法是否熟悉,这里通过几个问题向大家解释一下,安装Java开发软件时,默认安装包含两个文件夹,一个JDK(Java开发工具箱),一个JRE(Java运行环境,内含JVM),其中JDK内另含一个JRE。

    eclipse.ini

    Eclipse的启动由$ECLIPSE_HOME/eclipse.ini控制,如果$ECLIPSE_HOME 没有...2:所有在-vmargs之后的参数将会被传输给JVM,所有如果所有对Eclipse 设置的参数必须写在-vmargs之前(就如同你在命令行上使用这些参数一样)

    Optimizer for Eclipse

    在2015年EclipseCon上,Zero Turnaround(消除Java...从Eclipse Marketplace下载安装后,Eclipse优化器会通过一系列的向导步骤询问用户是否调整JVM启动参数中的内存设置和其他性能标志,从而大大提升应用的启动速度。

    Eclipse 启动运行速度调优

    运行参数如下: eclipse.exe -vmargs -Xverify:none -XX:+UseParallelGC -XX:PermSize=20M <br>-------------- <br>JVM 提供了各种用于调整内存分配和垃圾回收行为的标准开关和非标准...

    MyEclipse内存不足谈谈JVM内存

    这里有几个问题: 1. 各个参数的含义什么? 2. 为什么有的机器我将-Xmx 和-XX:MaxPermSize 都设置为512M 之后Eclipse 可以启 ...3. 为何将上面的参数写入到eclipse.ini文件Eclipse没有执行对应的设置?

    深入理解_Java_虚拟机 JVM_高级特性与最佳实践

    112 5.2.5 服务器JVM进程崩溃 / 113 5.3 实战:Eclipse运行速度调优 / 114 5.3.1 调优前的程序运行状态 / 114 5.3.2 升级JDK 1.6的性能变化及兼容问题 / 117 5.3.3 编译时间和类加载时间的优化 / 122 5.3.4 ...

    junitlaunchfixer:自动将用户指定的最大堆设置添加到所有新的 Eclipse JUnit 启动器

    JUnitLaunchFixer 是一个简单的插件,用于在 Eclipse 中为任何基于 JUnit 的启动器自动设置 JVM 最大堆大小参数。 通过这种方式,您可以使用该插件自动设置手动或在 Eclipse 中自动创建的任何 JUnit 启动的堆大小。 ...

    joc eclipse plugin

    在Eclipse中的属性设置> 事实上,在Eclipse中使用Jocky时,Jocky也是首先针对所选工程生成Ant的Build文件(默认名称jocky_build.xml),然后再通过Ant完成混淆编译。 以下是Jocky在Eclipse中自动生成的...

    Eclipse开发分布式商城系统+完整视频代码及文档

    │ 19-tomcat中JVM参数优化.avi │ ├─补充2:Redis3.0新特性、主从复制、集群视频教程 │ │ 打开必读.txt │ │ │ ├─相关资料 │ │ redis-3.0.1.tar.gz │ │ redis-3.0.2.tar.gz │ │ redis-3.2.1.gem │...

    java 混淆工具,不可逆 jocky 也许是最好的了

    在Eclipse中的属性设置> 事实上,在Eclipse中使用Jocky时,Jocky也是首先针对所选工程生成Ant的Build文件(默认名称jocky_build.xml),然后再通过Ant完成混淆编译。 以下是Jocky在Eclipse中自动生成的Ant ...

    jocky 混肴编译rar包(ant和插件俩个版本)

    在Eclipse中的属性设置> 事实上,在Eclipse中使用Jocky时,Jocky也是首先针对所选工程生成Ant的Build文件(默认名称jocky_build.xml),然后再通过Ant完成混淆编译。 以下是Jocky在Eclipse中自动生成的Ant ...

    Java项目开发与毕业设计指导

    如果不能运行,将ch07文件夹下的swt.jar加入构建路径,然后在运行中的JVM参数中加入-Djava.library.path="dll所在目录的绝对路径"即可。 也可以在命令行下直接运行该程序,假设ch07文件夹放在D盘跟目录。则在cmd下...

    TilesetGenerator:等距图块生成器

    等距图块生成器开发人员该项目使用Lombok,并且必须设置JVM参数:-javaagent:/eclipse-oxygen/lombok.jar=ECJ建造mvn clean install(然后将战争部署在某些Web容器上;例如Tomcat)

    Java编程经验

    在命令行窗口运行Java程序的时候,加上这个很有用的参数: java -verbose *.class 这样会清晰的打印出被加载的类文件,大部分是jdk自身运行需要的,最后几行会明显的看到自己用到的那几个类文件被加载进来的顺序。...

    Nginx安装配置、Resin安装配置说明文档

    b)常用的 Nginx 参数 - 3 - c)静态文件处理 - 4 - d)动态页面请求处理 - 4 - e)下面为nginx.conf配置实例: - 5 - f)Nginx 启动,停止等命令 - 8 - (2) Resin安装配置 - 9 - 1) Resin安装 - 9 - 2) Resin配置 - 9 - ...

    Java虚拟机

    5.3.4 调整内存设置控制垃圾收集频率 5.3.5 选择收集器降低延迟 5.4 本章小结 第三部分 虚拟机执行子系统 第6章 类文件结构 6.1 概述 6.2 无关性的基石 6.3 Class类文件的结构 6.3.1 魔数与Class文件的版本...

    Jetty中文手册

    如何设置上下文(Context Path) 如何知道使用了那些jar包 如何配置SSL 如何使用非root用户监听80端口 如何配置连接器(Connectors) 如何配置虚拟主机(Virtual Hosts) 如何配置会话ID(Session IDs) 如何序列化...

    Java入门教程(微学苑)-part1

    1.3 关于JVM的执行效率 2 1.4 客户端市场的折戟 3 1.5 Java的主要就业方向 3 1.5.1.1 Web开发 3 1.5.1.2 Android开发 3 1.5.1.3 客户端开发 3 1.6 Java的不同版本 4 1.6.1.1 J2SE(Java 2 Platform Standard Edition)...

Global site tag (gtag.js) - Google Analytics