This discussion is archived
3 Replies Latest reply: Apr 22, 2013 12:40 AM by RenévanWijk RSS

Unable to start application with "-XX:-CMSParallelRemarkEnabled" JVM option

1004285 Newbie
Currently Being Moderated
We are using CMS GC collector in application which is build on JDK1.6_26 version with the following set of JVM parameters:

-J-server -J-d64 -Xms5g -Xmx5g -J-noclassgc -J-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:NewSize=1536m -XX:MaxGCPauseMillis=2000 -XX:+CMSClassUnloadingEnabled -XX:+PrintTenuringDistribution -XX:CMSInitiatingOccupancyFraction=40 -Xloggc:log/details.pipe -XX:+PrintHeapAtGC -XX:NewRatio=3 -XX:CMSMaxAbortablePrecleanTime=15 -XX:+CMSScavengeBeforeRemark -XX:TargetSurvivorRatio=70 -XX:+UseCMSInitiatingOccupancyOnly -XX:MaxTenuringThreshold=8 -XX:ConcGCThreads=1 -XX:-CMSParallelRemarkEnabled

However when we start application, following error message is thrown:

unknown argument '-CMSParallelRemarkEnabled'


The same flag is mentioned as a workaround in the following java bug:
http://bugs.sun.com/view_bug.do?bug_id=6558100

and the same flag is mentioned multiple times in the following articles
http://docs.oracle.com/cd/E19462-01/819-4673/gbpxz/index.html (section: JVM Tuning Parameters)

Please suggest on how to add this flag with out any error message?

Thanks a lot,
Kishore Kadiri

Edited by: 1001282 on Apr 19, 2013 9:52 PM
  • 1. Re: Unable to start application with "-XX:-CMSParallelRemarkEnabled" JVM option
    1004285 Newbie
    Currently Being Moderated
    Did anyone experience similar issue? any inputs and suggestions for resolving this issue is much appreciated.
  • 2. Re: Unable to start application with "-XX:-CMSParallelRemarkEnabled" JVM option
    1004285 Newbie
    Currently Being Moderated
    Same behavior is observed for “-XX:-CMSPermGenPrecleaningEnabled" JVM CMS gc option, any help on this is much appreciated.
  • 3. Re: Unable to start application with "-XX:-CMSParallelRemarkEnabled" JVM option
    RenévanWijk Oracle ACE
    Currently Being Moderated
    No problems here:
    [user@machine1 ~]$ java -server -d64 -Xms1024m -Xmx1024m -XX:NewRatio=3 -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -version
    java version "1.7.0_09-icedtea"
    OpenJDK Runtime Environment (rhel-2.3.8.0.el6_4-x86_64)
    OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)
    When we put in an option, for example, -XX:SomethingNotRight, it outputs the following:
    [user@machine1 ~]$ java -server -d64 -Xms1024m -Xmx1024m -XX:NewRatio=3 -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:SomethingNotRight -version
    Unrecognized VM option 'SomethingNotRight'
    Error: Could not create the Java Virtual Machine.
    Error: A fatal exception has occurred. Program will exit.
    Also why are you setting these (-XX:ConcGCThreads=1 -XX:-CMSParallelRemarkEnabled) parameters? Are you running on a machine with a small numbe of CPU's (cores)? If yes it is better to run the CMS collector in incremental mode, for example,
    -server -Xms1024m -Xmx1024m -XX:NewRatio=2 -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:+CMSIncrementalPacing
    Note that when running with CMS it is advisory set CMSParallelRemarkEnabled on (-XX:+CMSParallelRemarkEnabled - think this is the default anyway). This enables multiple parallel threads to participate in the remark phase of the CMS algorithm. As this is a stop the world phase it is good practice to use as many cores as possible and thus reducing the time it is stopping.

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points