Thu Dec 02 01:03:52 GMT 2021 option listjava -XX:+PrintFlagsFinal -version | findstr HeapSize , find out actual Xmx default in bytes - https://www.edureka.co[..]default-parameters-of-xms-and-xmx-in-jvm -XX:+PerfDisableSharedMem , prevent locking by sharedmem in linux - http://www.evanjones.ca/jvm-mmap-pause.html How linkedin turn the GC - http://engineering.linkedin.com[..]ughput-and-low-latency-java-applications Using generational & concurrent GC collector - http://www.javacodegeeks.com[..]/04/ibm-jvm-tuning-gencon-gc-policy.html Full VM option list : http://blogs.sun.com/roller/resources/watt/jvm-options-list.html, update for Java7 - http://nerds-central.blogspot.com[..]ot.com/2011/07/all-jvm-7-xx-options.html http://stas-blogspot.blogspot.com[..]ost-complete-list-of-xx-options-for.html A simplified list for some frequency use options - http://rdafbn.blogspot.com.au[..]rbage-collector-guidelines-and-tips.html HotSpot JVM garbage collection options cheat sheet - http://aragozin.blogspot.com[..]spot-jvm-garbage-collection-options.html http://www.oracle.com[..]va/javase/tech/vmoptions-jsp-140102.html An example and story about effect of difference VM parameter affecting the performance - http://www.javaspecialists.eu/archive/Issue191.html Clear the code cache automatically with -XX:+UseCodeCacheFlushing - http://blogs.amd.com[..]time-for-long-running-java-applications/ Discussion about -XX:MinHeapFreeRatio parameter - http://www.gossamer-threads.com[..]s.com/lists/lucene/java-user/44286#44286 The other detailed guide for VM parameters tuning - http://java.sun.com/j2se/1.5/pdf/jdk50_ts_guide.pdf Here is a more simple cookbook - http://java.sun.com/performance/reference/whitepapers/tuning.html A outdated (1.4) , compehensive but still not really too detailed, overview of various GC tuning - http://www.petefreitag.com/articles/gctuning/ Some say following VM parameter is good enough -server -Xmx -XX:+UseParallelGC http://blogs.sun.com[..]/page/binublog?entry=java_tuning_for_xml Some say is useful if you have huge memory -XX:+UseLargePages http://blogs.sun.com[..]dagastine?entry=java_se_tuning_tip_large Some say below parameter keep GC in low pause -XX:MaxGCPauseMillis=5000 Some say below parameter are very optimal -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:NewSize=1200m -XX:SurvivorRatio=16 http://www.theserverside.com[..]d.tss?thread_id=41258&ASRC=EM_NNL_347804 Some say those parameter is good -XX:+UseConcMarkSweepGC -XX:ParallelCMSThreads=1 -XX:+CMSIncrementalMode -XX:+CMSIncrementalPacing -XX:CMSIncrementalDutyCycleMin=0 -XX:CMSIncrementalDutyCycle=10 http://blog.mikiobraun.de/2010/08/cassandra-gc-tuning.html Just in case anyone is curious, the flags enabled by -XX:+AggressiveOpts in JDK 1.6.0_25 are: -XX:+EliminateAutoBox -XX:AutoBoxCacheMax=20000 -XX:BiasedLockingStartupDelay=500 -XX:+DoEscapeAnalysis -XX:+OptimizeStringConcat -XX:+OptimizeFill Generate dump with OOME - -XX:+HeapDumpOnOutOfMemoryError GC log sample of -XX:+UseConcMarkSweepGC -XX:PrintFLSStatistics=1 -XX:+PrintGCDetails - https://gist.github.com/1329783 A case study of tuning VM GC parameters - http://plumbr.eu[..]ld-you-trust-the-default-settings-in-jvm Explanation for few performance related VM parameters - http://www.techpaste.com[..]ine-options-jvm-performance-improvement/ Show the exact vm flag that java using - http://matthewkwilliams.com[..]/looking-inside-a-jvm-xxprintflagsfinal/ For G1GC - https://dzone.com[..]e-first-garbage-collector-tuning-flags-1 https://ionutbalosin.com[..]otspot-jvm-performance-tuning-guidelines (google search) (amazon search) second |