【问题标题】:Equivalent JVM options with Oracle J2SE 1.7, for Eclipse 'kepler' 4.3与 Oracle J2SE 1.7 等效的 JVM 选项,用于 Eclipse 'kepler' 4.3
【发布时间】:2013-08-09 15:05:47
【问题描述】:

试图在运行基于 Debian 的 64 位发行版的低功耗上网本(双核 1.66MHz Atom N455)上提高 Eclipse 'Kepler' rel-4.3 IDE 的性能。

在 SE 上找到以下 2 个之前的问题(q1、q2),并尝试了几种组合。

$ java -version
java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b10)
Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)

对eclipse.ini采用如下设置,相比于默认的eclipse.ini和使用OpenJDK 6和IcedTea相比,我感觉启动和运行速度并没有更快,反而有些慢。所以问题是,是否有任何已知的建议操作已被弃用或与 Oracle Jave SE 1.7 冲突

尝试了新的 eclipse.ini:

-nosplash
-vmargs
-Xincgc
-Xss500k
-Dosgi.requiredJavaVersion=1.6
-Xms64m
-Xmx200m
-XX:NewSize=8m
-XX:PermSize=80m
-XX:MaxPermSize=150m
-XX:MaxPermHeapExpansion=10m
-XX:+UseConcMarkSweepGC
-XX:CMSInitiatingOccupancyFraction=70
-XX:+UseCMSInitiatingOccupancyOnly
-XX:+UseParNewGC
-XX:+CMSConcurrentMTEnabled
-XX:ConcGCThreads=2
-XX:ParallelGCThreads=2
-XX:+CMSIncrementalPacing
-XX:CMSIncrementalDutyCycleMin=0
-XX:CMSIncrementalDutyCycle=5
-XX:GCTimeRatio=49
-XX:MaxGCPauseMillis=20
-XX:GCPauseIntervalMillis=1000
-XX:+UseCMSCompactAtFullCollection
-XX:+CMSClassUnloadingEnabled
-XX:+DoEscapeAnalysis
-XX:+UseCompressedOops
-XX:+AggressiveOpts
-XX:+ExplicitGCInvokesConcurrentAndUnloadsClasses

原始eclipse.ini:

-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.200.v20130521-0416
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.6
-XX:MaxPermSize=256m
-Xms40m
-Xmx512m

【问题讨论】:

    标签: eclipse performance


    【解决方案1】:

    我遇到了同样的事情。我认为这更像是“您的 Java 版本中已弃用的内容”问题,因为它将大部分命令传递给 Java。开普勒帮助文件并没有具体说明你和我传递的许多命令,所以这就是我的想法。

    这是开普勒帮助文件 http://help.eclipse.org/kepler/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fapi%2Fconstant-values.html

    我要说的一件事是在快速阅读 Internet 之后,我认为这两个不能同时使用,但我不知道。 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC

    我只有第二个

    这是我读到的地方 http://www.fasterj.com/articles/oraclecollectors1.shtml

    嗯,再读一遍,看起来你可以同时使用这两个

    看看这里也许http://docs.oracle.com/javase/7/docs/technotes/tools/solaris/java.html

    【讨论】:

      【解决方案2】:

      我能够摆脱这些额外的参数。您使用的最后一个网址中没有的一些额外的可能已被弃用或可能不会被弃用,但这并没有让我崩溃。

      -d64  
      -Xms128m
      -Xss4m
      -Xmx248m
      -Xfuture
      -Xincgc
      -XX:NewSize=8m
      -Xrs
      -XX:+AggressiveOpts
      -XX:MaxGCPauseMillis=20
      -XX:ParallelGCThreads=4
      -XX:+UseConcMarkSweepGC
      -XX:+UseLargePages
      -XX:+UseParNewGC
      -XX:CMSInitiatingOccupancyFraction=70
      -XX:+UseCMSInitiatingOccupancyOnly
      -XX:+UseParNewGC
      -XX:+CMSConcurrentMTEnabled
      -XX:ConcGCThreads=4
      -XX:+CMSIncrementalPacing
      -XX:CMSIncrementalDutyCycleMin=0
      -XX:CMSIncrementalDutyCycle=5
      -XX:GCTimeRatio=49
      -XX:GCPauseIntervalMillis=1000
      -XX:+UseCMSCompactAtFullCollection
      -XX:+CMSClassUnloadingEnabled
      -XX:+ExplicitGCInvokesConcurrentAndUnloadsClasses
      -XX:+DoEscapeAnalysis
      -XX:+UnlockExperimentalVMOptions
      -XX:PredictedClassLoadCount=16384
      -XX:+UseCompressedOops
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-01-02
        • 2013-06-27
        • 1970-01-01
        • 1970-01-01
        • 2015-01-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多