garbage collection - High Number of CMS mark remark pauses even though Old gen is not half full -


i trying understand cause high number of cms marks , remarks(other phases well) averaging around 700ms though old gen not half full.following gc configurations , stats gcviewer.

-xms3g  -xmx3g  -xx:newsize=1800m  -xx:maxnewsize=1800m -xx:maxpermsize=256m -xx:survivorratio=8 -xx:+useconcmarksweepgc -xx:+cmsclassunloadingenabled 

summary using gc viewer: http://i.imgur.com/0iibnur.png

gc log

152433.761: [gc [1 cms-initial-mark: 284761k(1302528k)] 692884k(2961408k), 0.3367298 secs] [times: user=0.33 sys=0.00, real=0.34 secs]  152434.098: [cms-concurrent-mark-start] 152434.417: [cms-concurrent-mark: 0.318/0.318 secs] [times: user=1.38 sys=0.02, real=0.32 secs]  152434.417: [cms-concurrent-preclean-start] 152434.426: [cms-concurrent-preclean: 0.008/0.009 secs] [times: user=0.02 sys=0.00, real=0.01 secs]  152434.426: [cms-concurrent-abortable-preclean-start]  cms: abort preclean due time 152439.545: [cms-concurrent-abortable-preclean: 4.157/5.119 secs] [times: user=5.82 sys=0.20, real=5.12 secs]  152439.549: [gc[yg occupancy: 996751 k (1658880 k)]152439.550: [rescan (parallel) , 0.5383841 secs]152440.088: [weak refs processing, 0.0070783 secs]152440.095: [class unloading, 0.0777632 secs]152440.173: [scrub symbol & string tables, 0.0416825 secs] [1 cms-remark: 284761k(1302528k)] 1281512k(2961408k), 0.6771800 secs] [times: user=3.35 sys=0.02, real=0.68 secs]  152440.227: [cms-concurrent-sweep-start] 152440.613: [cms-concurrent-sweep: 0.382/0.386 secs] [times: user=0.39 sys=0.01, real=0.39 secs]  152440.613: [cms-concurrent-reset-start] 152440.617: [cms-concurrent-reset: 0.004/0.004 secs] [times: user=0.01 sys=0.00, real=0.00 secs]  152441.719: [gc [1 cms-initial-mark: 284757k(1302528k)] 1320877k(2961408k), 0.7720557 secs] [times: user=0.78 sys=0.01, real=0.77 secs]  152442.492: [cms-concurrent-mark-start] 

cms remark has scan young generation, since young generation large takes time. depending on java version (which did not specify!) may have enable parallel remarking (cmsparallelremarkenabled).

enabling cmsscavengebeforeremark may reduce amount of memory needs scanned during remarks.

and shrinking new generation , taking hit of few more promotions cleaned out concurrent old gen gc may work too.

i don't think incremental mode fixes here, drastically alters behavior of cms masks original issue.


Comments

Popular posts from this blog

c# - Binding a comma separated list to a List<int> in asp.net web api -

Delphi 7 and decode UTF-8 base64 -

html - Is there any way to exclude a single element from the style? (Bootstrap) -