cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "graham sanderson (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-7432) Add new CMS GC flags to cassandra_env.sh for JVM later than 1.7.0_60
Date Sat, 21 Jun 2014 16:04:24 GMT
graham sanderson created CASSANDRA-7432:
-------------------------------------------

             Summary: Add new CMS GC flags to cassandra_env.sh for JVM later than 1.7.0_60
                 Key: CASSANDRA-7432
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7432
             Project: Cassandra
          Issue Type: Improvement
          Components: Packaging
            Reporter: graham sanderson


The new flags in question are as follows:

{code}
-XX:+CMSParallelInitialMarkEnabled
-XX:+CMSEdenChunksRecordAlways
{code}

Given we already have

{code}
JVM_OPTS="$JVM_OPTS -XX:+UseParNewGC" 
JVM_OPTS="$JVM_OPTS -XX:+UseConcMarkSweepGC" 
JVM_OPTS="$JVM_OPTS -XX:+CMSParallelRemarkEnabled" 
JVM_OPTS="$JVM_OPTS -XX:+UseTLAB"
if [ "$JVM_ARCH" = "64-Bit" ] ; then
    JVM_OPTS="$JVM_OPTS -XX:+UseCondCardMark"
fi
{code}

The assumption would be that people are at least running on large number CPU cores/threads

I would therefore recommend defaulting these flags if available - the only two possible downsides
for {{+CMSEdenChunksRecordAlways}}:

1) There is a new very short (probably un-contended) lock in the "slow" (non TLAB) eden allocation
path with {{+CMSEdenChunksRecordAlways}}. I haven't detected this timing wise - this is the
"slow" path after all
2) If you are running with {{-XX:-UseCMSCompactAtFullCollection}} (not the default) *and*
you call {{System.gc()}} then  {{+CMSEdenChunksRecordAlways}} will expose you to a possible
seg fault 
[http://bugs.java.com/bugdatabase/view_bug.do?bug_id=8021809]



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message