-答复: GC frequency
谢良 2013-02-21, 08:10
Of course, you'll hit the nightmarish "CMS fragement" easier if NewSize too low:)
Generally speaking, most of YGC should be less than 5ms for a normal size heap.
maybe your load is too high or there're vm options be misconfigured ?
发件人: Varun Sharma [[EMAIL PROTECTED]]
发送时间: 2013年2月21日 15:32
收件人: [EMAIL PROTECTED]
主题: GC frequency
I have a system tuned with new Gen 512M with a lot write load. The system
has 4 cores - ParNewGC and GCThreads is set to 4. I am using ConcMarkGC and
CMSInitiating fraction is set to 60 %. I am observing the 90th/99th
percentile of latency and see it highly correlated with GC pauses. There
are times when I have a GC pause of ~ 200 ms every 4 seconds - the tail
latency shoots up to 200 milliseconds for reads - most reads are being
served out of cache. Looking at the GC log and tail latency pattern, there
is direct correlation b/w the two. When the write load is low, and the GC
pauses are like 100-150 ms every 6 seconds, the tail latency improves.
After seeing this behaviour, I am intent on reducing the NewSize to 256M
but I risk 100 ms pauses pretty much every 1-2 seconds and perhaps higher
chance of promotion failures (MSLAB etc. is on). Does anyone know if
frequent young gen collections can be a problem ?