Tuning GC to minimizing pause time on multi-core servers

Parallel GC is not the default settings of the HotSpot JVM,
if you don't use parallel GC, the system will not scale well on multiple CPU cores.

You can optimize for throughput or for response time.

 

Parallel GC is not the default settings of the HotSpot JVM,
if you don't use parallel GC, the system will not scale well on multiple CPU cores.

You can optimize for throughput or for response time.

If you are running high-end servers with SLAs on response time,
you have to avoid GC stop-the-world pauses, by passing those flags to the JVM:
-XX:+UseParNewGC
-XX:+UseConcMarkSweepGC
-XX:+CMSIncrementalMode
-XX:+CMSIncrementalPacing
-XX:+CMSParallelRemarkEnabled
-XX:+CMSPermGenSweepingEnabled
-XX:+CMSClassUnloadingEnabled
-XX:+DisableExplicitGC

references:
http://java.sun.com/docs/hotspot/gc5.0/gc_tuning_5.html
http://www.ibm.com/developerworks/java/library/j-jtp11253/
http://www.ja-sig.org/wiki/display/UPC/uPortal+Heap+Tuning

 



Share this article: