'Large 'sync' value for ParallelGCFailedAllocation

Sometimes I see long pauses in my gc.log

2014-07-18T18:42:26.137+0400: 7846.980: [GC [PSYoungGen: 86267K->10032K(87744K)] 251198K-175254K(272512K), 0.0066190 secs] [Times: user=0.08 sys=0.00, real=0.01 secs]

Total time for which application threads were stopped: 0.6394170 seconds

Total time for which application threads were stopped: 0.0014570 seconds

But these pauses don't affect GC time and CPU usage time.

Safepoint statistics (+XX:PrintSafePointStatistics):

vmop [threads: total initially_running wait_to_block] [time: spin block sync cleanup vmop] page_trap_count 7846.348: ParallelGCFailedAllocation [ 370 0 2 ] [ 0 0 630 1 7 ] 0

(sync time = 630ms) What does 'sync' mean in this context?



Solution 1:[1]

There's another option now: async-profiler has an option to attach to a JVM and only record samples while threads are stopping for a safepoint: -ttsp

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Dan Berindei