[ https://issues.apache.org/jira/browse/HBASE-14613?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15211482#comment-15211482 ]
Yanping Wang commented on HBASE-14613: -------------------------------------- Yes, I worked on Jave runtime and GC performance for many years before I plugged myself in Mnemonic project. I can figure out what we can do to turn G1GC by looking at G1GC logs after run following 5 print flags: -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintReferenceGC -XX:+PrintAdaptiveSizePolicy -XX:+PrintFlagsFinal Basic G1 parameters: -XX:+UseG1GC –Xms? –Xmx? (don't specify -Xmn) -XX:MaxGCPauseMillis (default 200ms, for HBase, set to 100) -XX:ParallelGCThreads=? calculate 8+(#of logical processors-8)(5/8) -XX:+ParallelRefProcEnabled normal G1GC turning flags: -XX:G1HeapWastePercent (default 5, I changed to 10-20 for HBase, 5% is too hyper) -XX:InitiatingHeapOccupancyPercent (default 45%, change to 65 based on pined old object size) -XX:ConcGCThreads (default ~1/4 of parallel threads, increase to 2/3, so concurrent marking can finish faster before cause full gc) -XX:G1MixedGCCountTarget (default 8, some time I reduced it to 6, as I don't want to have expensive mixed GCs to cause long mixed gc pauses) -XX:G1NewSizePercent=? -XX:G1MaxNewSizePercent=? ( the default is 5% and 65%, used 1% and 10% for 100GB+ heap size, so I don't get crazy long young GC pauses to kill HBase response time) > Remove MemStoreChunkPool? > ------------------------- > > Key: HBASE-14613 > URL: https://issues.apache.org/jira/browse/HBASE-14613 > Project: HBase > Issue Type: Brainstorming > Reporter: Lars Hofhansl > Priority: Minor > Attachments: 14613-0.98.txt, gc.png, writes.png > > > I just stumbled across MemStoreChunkPool. The idea behind is to reuse chunks > of allocations rather than letting the GC handle this. > Now, it's off by default, and it seems to me to be of dubious value. I'd > recommend just removing it. -- This message was sent by Atlassian JIRA (v6.3.4#6332)