"-XX:+PrintFlagsFinal" - Print JVM Options

This section describes the '-XX:+PrintFlagsFinal' JVM option, which prints all options and their values used by the JVM.

If want to know what are default options used by the JVM, you can use the "-XX:+PrintFlagsFinal" option to print them out:

herong> \progra~1\java\jdk1.8.0\bin\java \
   -XX:+PrintFlagsFinal GarbageCollection

[Global flags]
    uintx AdaptiveSizeDecrementScaleFactor          = 4
    uintx AdaptiveSizeMajorGCDecayTimeScale         = 10
    uintx AdaptiveSizePausePolicy                   = 0
    uintx AdaptiveSizePolicyCollectionCostMargin    = 50
    uintx AdaptiveSizePolicyInitializingSteps       = 20
      ...
     bool AlwaysTenure                              = false
    uintx AutoGCSelectPauseMillis                   = 5000
     bool CMSAbortSemantics                         = false
    uintx CMSAbortablePrecleanMinWorkPerIteration   = 100
     intx CMSAbortablePrecleanWaitMillis            = 100
    uintx CMSBitMapYieldQuantum                     = 10485760
   double G1ConcMarkStepDurationMillis              = 10.000000
    uintx G1ConcRSHotCardLimit                      = 4
    uintx G1ConcRSLogCacheSize                      = 10
    uintx GCHeapFreeLimit                           = 2
    uintx GCLockerEdenExpansionPercent              = 5
     bool GCLockerInvokesConcurrent                 = false
    uintx GCLogFileSize                             = 8192
    uintx GCPauseIntervalMillis                     = 0
    uintx GCTaskTimeStampEntries                    = 200
    uintx GCTimeLimit                               = 98
    uintx GCTimeRatio                               = 99
    uintx InitialHeapSize                          := 16777216
    uintx InitialSurvivorRatio                      = 8
    uintx InitialTenuringThreshold                  = 7
    uintx MaxNewSize                               := 89456640
    uintx MinHeapFreeRatio                          = 40
    uintx MinSurvivorRatio                          = 3
    uintx NewRatio                                  = 2
    uintx NewSize                                  := 5570560
    uintx NewSizeThreadIncrease                     = 4096
     intx ParGCArrayScanChunk                       = 50
    uintx ParGCDesiredObjsFromOverflowList          = 20
     bool ParGCTrimOverflow                         = true
     bool ParGCUseLocalOverflow                     = false
    uintx ParallelGCBufferWastePct                  = 10
    uintx ParallelGCThreads                         = 0
     bool ParallelGCVerbose                         = false
    uintx ParallelOldDeadWoodLimiterMean            = 50
    uintx ParallelOldDeadWoodLimiterStdDev          = 80
     bool ParallelRefProcBalancingEnabled           = true
     bool ParallelRefProcEnabled                    = false
     bool PrintCMSInitiationStatistics              = false
     intx PrintCMSStatistics                        = 0
     bool PrintGC                                   = false
     bool PrintGCApplicationConcurrentTime          = false
     bool PrintGCApplicationStoppedTime             = false
     bool PrintGCCause                              = true
     bool PrintGCDateStamps                         = false
     bool PrintGCDetails                            = false
     bool PrintGCID                                 = false
     bool PrintGCTaskTimeStamps                     = false
     bool PrintGCTimeStamps                         = false
     bool PrintHeapAtGC                             = false
    uintx SurvivorPadding                           = 3
    uintx SurvivorRatio                             = 8
     bool UseCMSBestFit                             = true
     bool UseCMSCollectionPassing                   = true
     bool UseCMSCompactAtFullCollection             = true
     bool UseCMSInitiatingOccupancyOnly             = false
     bool UseConcMarkSweepGC                        = false
     bool UseG1GC                                   = false
     bool UseGCLogFileRotation                      = false
     bool UseGCOverheadLimit                        = true
     bool UseGCTaskAffinity                         = false
     bool UsePSAdaptiveSurvivorSizePolicy           = true
     bool UseParNewGC                               = false
     bool UseParallelGC                             = false
     bool UseParallelOldGC                          = false
     bool UseSerialGC                               = false
    uintx YoungGenerationSizeIncrement              = 20
    uintx YoungGenerationSizeSupplement             = 80
    uintx YoungGenerationSizeSupplementDecay        = 8
    uintx YoungPLABSize                             = 4096
      ...

Table of Contents

 About This Book

 Heap Memory Area and Size Control

JVM Garbage Collection Logging

 Garbage Collection Demo Program

 Garbage Collection Logging Options

 "-XX:+PrintGC" - GC Logging Option for Short Messages

 "-XX:+PrintGCDetails" - Option for Detailed GC Messages

 "-XX:+PrintGCDateStamps" - Calendar Timestamp on GC Messages

 "-XX:+PrintGCApplicationStoppedTime" - Application Pause Durations

 "-XX:+PrintGCApplicationConcurrentTime" - Application Running Durations

 "-XX:+PrintHeapAtGC" - Print Heap Summary per GC

 "-XX:+PrintTenuringDistribution" - Tunuring Distribution

 "-XX:+PrintReferenceGC" - Reference Counts per GC

"-XX:+PrintFlagsFinal" - Print JVM Options

 Introduction of Garbage Collectors

 Serial Collector - "+XX:+UseSerialGC"

 Parallel Collector - "+XX:+UseParallelGC"

 Concurrent Mark-Sweep (CMS) Collector - "+XX:+UseConcMarkSweepGC"

 Garbage First (G1) Collector - "+XX:+UseG1GC"

 Object References and Garbage Collection

 Garbage Collection Performance Test Program

 Performance Tests on Serial Collector

 Performance Tests on Parallel collector

 Performance Tests on Concurrent collector

 Performance Tests on G1 collector

 Garbage Collection Performance Test Summary

 Archived Tutorials

 References

 Full Version in PDF/EPUB