Incremental CMS: long "[GC [1 CMS-initial-mark:"

Andrei Pozolotin andrei.pozolotin at gmail.com
Wed Feb 17 14:28:33 PST 2010


     *Jon, *hello;

    I need to convert CMS into incremental CMS to reduce latency,
    eliminate occasional "concurrent mode failure" - related pauses;

    and I am running into the following problem:

    1) in "normal CMS" - [GC [1 CMS-initial-mark: takes 50 milliseconds

    2) in "incremental CMS" - [GC [1 CMS-initial-mark:  takes 800
    milliseconds

    both above results are under same no-load conditions,
    with non-reducible statuc heap object set of 430 MB
    composed of some 350K complex objects;

    I can not understand why and how to fix it;
    I tried a lot of Incremental CMS - related option combinations,
    still dead end.

    GC settings, log attached;

    Thank you for your help,

    Andrei

    ++++++++++++++++++++++++++++++++++++++++++++++++

    # use server-style JIT compiler
    wrapper.java.additional.100=-server

    # do GC logging
    wrapper.java.additional.110=-verbose:gc
    wrapper.java.additional.111=-Xloggc:./logs/gc.log
    wrapper.java.additional.112=-XX:+PrintGCDetails
    wrapper.java.additional.113=-XX:+PrintGCTimeStamps

    # Heap Total = PermGen + NewGen + OldGen;
    wrapper.java.additional.120=-Xms3700m
    wrapper.java.additional.121=-Xmx3700m

    # PermGen;
    wrapper.java.additional.130=-XX:PermSize=50m
    wrapper.java.additional.131=-XX:MaxPermSize=50m

    # NewGen; Parallel collector;
    wrapper.java.additional.140=-XX:NewSize=1200m
    wrapper.java.additional.141=-XX:MaxNewSize=1200m
    wrapper.java.additional.142=-XX:-UseAdaptiveSizePolicy
    wrapper.java.additional.143=-XX:SurvivorRatio=1
    wrapper.java.additional.144=-XX:TargetSurvivorRatio=90
    wrapper.java.additional.145=-XX:MaxTenuringThreshold=3
    wrapper.java.additional.146=-XX:+UseParNewGC
    wrapper.java.additional.147=-XX:-UseParallelGC
    wrapper.java.additional.148=-XX:ParallelGCThreads=4

    # OldGen; Incremental CMS collector;
    wrapper.java.additional.170=-XX:-UseParallelOldGC
    wrapper.java.additional.171=-XX:+UseConcMarkSweepGC
    wrapper.java.additional.172=-XX:+CMSIncrementalMode
    wrapper.java.additional.173=-XX:-CMSIncrementalPacing
    wrapper.java.additional.174=-XX:CMSIncrementalDutyCycle=1
    wrapper.java.additional.175=-XX:+CMSParallelRemarkEnabled
    wrapper.java.additional.176=-XX:+CMSScavengeBeforeRemark
    wrapper.java.additional.177=-XX:CMSIncrementalOffset=10
    wrapper.java.additional.178=-XX:CMSScheduleRemarkEdenPenetration=5
    wrapper.java.additional.179=-XX:CMSWaitDuration=60000
    wrapper.java.additional.181=-XX:ParallelCMSThreads=1
    wrapper.java.additional.182=-XX:PrintCMSStatistics=0

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-gc-use/attachments/20100217/78e38c65/attachment-0001.html 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: gc.log
Url: http://mail.openjdk.java.net/pipermail/hotspot-gc-use/attachments/20100217/78e38c65/attachment-0001.ksh 


More information about the hotspot-gc-use mailing list