[ https://issues.apache.org/jira/browse/CASSANDRA-7486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14550721#comment-14550721 ]
Michael Perrone commented on CASSANDRA-7486: -------------------------------------------- I have done extensive load testing with G1GC with Java 1.7_80 and Cassandra 2.0.12.x versions with solr secondary indexes and 20GB max heap. On 8 core systems these options were the sweet spot for the test workload and worked out well in a production cluster, providing dramatic improvements in overall GC time and eliminating long CMS pauses that we could not tune out. I will try to attach some graphs/tables/metrics in another comment. {code:yaml} JVM_OPTS="$JVM_OPTS -XX:+UseG1GC" # set these to the number of cores JVM_OPTS="$JVM_OPTS -XX:ConcGCThreads=8" JVM_OPTS="$JVM_OPTS -XX:ParallelGCThreads=8" JVM_OPTS="$JVM_OPTS -XX:SurvivorRatio=8" # default is 10, this makes G1 slightly more aggressive # by starting the marking cycle earlier # in order to avoid evacuation failure (OOM) JVM_OPTS="$JVM_OPTS -XX:G1ReservePercent=15" # default is 45, we should start sooner. # in a high write large heap (20GB) this was # found to eliminate Old gen pauses JVM_OPTS="$JVM_OPTS -XX:InitiatingHeapOccupancyPercent=25" # default is 200 there is a tradeoff between latency # and throughput. increase this to increase throughput # at the cost of potential latency, up to 1000 JVM_OPTS="$JVM_OPTS -XX:MaxGCPauseMillis=500" # use largest possible region size # speeds up marking phase, tradeoff is efficiency # comment out to let JVM decide the size VM_OPTS="$JVM_OPTS -XX:G1HeapRegionSize=32" {code} > Compare CMS and G1 pause times > ------------------------------ > > Key: CASSANDRA-7486 > URL: https://issues.apache.org/jira/browse/CASSANDRA-7486 > Project: Cassandra > Issue Type: Test > Components: Config > Reporter: Jonathan Ellis > Assignee: Shawn Kumar > Fix For: 2.1.x > > > See > http://www.slideshare.net/MonicaBeckwith/garbage-first-garbage-collector-g1-7486gc-migration-to-expectations-and-advanced-tuning > and https://twitter.com/rbranson/status/482113561431265281 > May want to default 2.1 to G1. > 2.1 is a different animal from 2.0 after moving most of memtables off heap. > Suspect this will help G1 even more than CMS. (NB this is off by default but > needs to be part of the test.) -- This message was sent by Atlassian JIRA (v6.3.4#6332)