incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Schüller <sc...@spotify.com>
Subject Re: GC options
Date Wed, 14 Apr 2010 06:00:13 GMT
> I'm working on getting our latency as consistent as possible, and the gc likes to kick
off 60+ms periods of unavailability for a node, which for my application leads to a reasonable
number of timed out requests. Outside of the gc event, we get good responses.
>
> I'm happy with reduced throughput for shorter pauses, so I'm going to do the standard
jvm gc tuning guide[0] for short pauses, curious if anyone else has gone down this path and
gotten gc pauses consistent and low or if what's in bin/cassandra.in.sh is basically the best
I should expect. (Anyone tried jrockit?)

If your situation is such that you are willing to use the unreleased
JDK 1.7 and G1GC (still being marked as experimental and may still be
a stability concern and since we are talking about storing data that
probably means conservatism is called for) you can try that. It offers
some more direct control over the target GC pause times, although does
not provide guarantees. A potential starting point of VM options may
be:

    	 -XX:+UnlockExperimentalVMOptions
    	 -XX:+UseG1GC
    	 -XX:MaxGCPauseMillis=10
    	 -XX:GCPauseIntervalMillis=15

And maybe:

    	 -XX:G1ConfidencePercent=100

And maybe (not sure of current status but there used to be a known bug
when enabled):

 	 -XX:+G1ParallelRSetUpdatingEnabled
    	 -XX:+G1ParallelRSetScanningEnabled

-- 
/ Peter Schuller aka scode

Mime
View raw message