I make tools for understanding the Java Virtual Machine. Please support my work by
sponsoring me on GitHub.
Thank you!
FullJEP
JEPMap
JEPSearch
hsdis
JITWatch
JaCoLine
VM Options Explorer
VM Intrinsics Explorer
GC Explorer
Optimizing Java
VM Options Explorer - Additional options in Graal JDK17 Native Enterprise Edition
OpenJDK HotSpot
Options added/removed
OpenJDK options also hosted on
foojay.io
JDK6
JDK7
JDK8
JDK9
JDK10
JDK11
JDK12
JDK13
JDK14
JDK15
JDK16
JDK17
JDK18
JDK19
Alibaba
Dragonwell 8
Dragonwell 11
Amazon
Corretto 8
Corretto 11
Corretto 17
Azul Systems
Zing
Zulu
JDK8
JDK11
JDK8
JDK11
JDK13
JDK15
JDK16
JDK17
BellSoft
Liberica 8
Liberica 11
Liberica 17
Eclipse
Temurin 8
Temurin 11
Temurin 17
GraalVM 22.0.0.2
JDK11
JDK17
CE
EE
CE
EE
EE-only
EE-only
GraalVM native-image 22.0.0.2
JDK11
JDK17
CE
EE
CE
EE
EE-only
EE-only
Microsoft
Microsoft 11
Microsoft 16
Microsoft 17
OpenJ9
OpenJ9
Oracle
JDK6
JDK7
JDK8
JDK9
JDK10
JDK11
JDK12
JDK13
JDK14
JDK15
JDK16
JDK17
SAP
SapMachine
Options present only in GraalVM native-image EE JDK17
Present only in GraalVM native-image EE JDK17
Name
AOTAggregateProfiles
AOTExpansionCount
AOTInliner
AOTInlinerHotContextsRatio
AOTInlinerMinimumHotContexts
AOTInlinerPrintHot
AOTPriorityInline
AllowedNumberOfInaccurateProfiles
AlwaysPreTouch
AuxiliaryEngineCache
BaseTargetSpending
BlindConstants
BouncyCastleIntrinsics
BreakChainedPhis
CallGraphCompilerNodeLimit
CallGraphSizeLimit
CallGraphSizePenaltyCoefficient
CompileInPerThreadReusedIsolates
CompilerNodePenaltyCoefficient
ConcGCThreads
ConsiderVectorizableLoops
CostNewLiveVariable
CostReductionFactor
CutoffCodeSizePenaltyCoefficient
Debug
DebugPeelingSynonyms
DetectInvertedLoopsAsCounted
DominatorUsageTreeMaxDepth
DumpDetailedNodeTypeStats
DumpMethodsData
DumpSketches
DuplicateALot
DuplicationBudgetFactor
DuplicationBudgetFactorLate
DuplicationCostReductionFactor
DuplicationMinBranchFrequency
EnablePGOContextSensitivity
EnterpriseCloneReadElimination
EnterpriseEarlyReadElimination
EnterprisePartialUnroll
ErgoHeapSizeLimit
ExcludeFunctionFromDuplication
ExpandAllProximityBonus
ExpandAllProximityBonusInertia
ExpansionInertiaBaseValue
ExpansionInertiaInvokeBonus
ExpansionInertiaMax
ExplicitGCInvokesConcurrent
ExtendedLinuxHeaders
ForceGuardHoistingLoopDuplicationWithoutPGO
ForceUnroll
FrameStateLivenessStatistics
FullUnrollAsPEACleanup
G1ConcMarkStepDurationMillis
G1ConcRSHotCardLimit
G1ConcRSLogCacheSize
G1ConcRefinementGreenZone
G1ConcRefinementRedZone
G1ConcRefinementServiceIntervalMillis
G1ConcRefinementThreads
G1ConcRefinementThresholdStep
G1ConcRefinementYellowZone
G1ConfidencePercent
G1DebugLevel
G1HeapRegionSize
G1HeapWastePercent
G1MixedGCCountTarget
G1PeriodicGCInterval
G1PeriodicGCInvokesConcurrent
G1PeriodicGCSystemLoadThreshold
G1RSetRegionEntries
G1RSetSparseRegionEntries
G1RSetUpdatingPauseTimePercent
G1RefProcDrainInterval
G1ReservePercent
G1SATBBufferEnqueueingThresholdPercent
G1SATBBufferSize
G1UpdateBufferSize
G1UseAdaptiveConcRefinement
G1UseAdaptiveIHOP
G1VerifyHeapRegionCodeRoots
G1VerifyRSetsDuringFullGC
GCDrainStackTargetSize
GCPauseIntervalMillis
GCTimeRatio
GenerateRuntimeDebugInfo
GuardHoistingLoopDuplication
GuardHoistingLoopDuplicationMaxSize
GuardHoistingLoopDuplicationMinFrequency
GuardHoistingLoopDuplicationMinHotness
HeapSizePerGCThread
HighTierInversion
HighTierPartialUnrolling
HotCompilationBaseTargetSpending
HotCompilationCompilerNodePenaltyCoefficient
HotCompilationCutoffCodeSizePenaltyCoefficient
HotCompilationExpansionInertiaBaseValue
HotCompilationLargeChildrenCountPenaltyCoefficient
HotCompilationMaxPolymorphicDispatches
HotCompilationMinPolymorphicDispatchProbability
HotCompilationRelativeBenefitInliningCoefficient
HotCompilationSmallRootIrPenaltyCoefficient
HotCompilationTypicalGraphSize
HotCompilationTypicalGraphSizeInvokeBonus
HotCompilationUnit
HottestPercentageThreshold
IgnoreBadDuplications
IgnoreDeoptUsages
InfeasiblePathCorrelation
InfeasiblePathCorrelationWindowSize
InitialHeapSize
InitialRAMPercentage
InitiatingHeapOccupancyPercent
InlineAllBonus
InlineAllExplored
InlinedCompilerNodeLimit
InliningCoefficient
InsertPreMainPostOnly
InspectGraphs
IntrinsifyStringFormat
InvertMultiEndLoops
InvertNonLeafLoops
InvertVectorizableLoops
LargeChildrenCountPenaltyCoefficient
LoopBoundOptimizationPhase
LoopInversion
LoopRotation
LoopRotationAssertCountedAfter
LoopRotationToxicNodeSetMaxNodecost
MarkStackSize
MarkStackSizeMax
MaxCpuLocalsPerCounter
MaxGCPauseMillis
MaxGraphSizeNodeCost
MaxMispredictionCostIncreaseFactor
MaxPolymorphicDispatches
MaxPriorityInliningPeelingIterations
MaxRAM
MaxRAMPercentage
MaxSimulationIterations
MaxSplitsPerNode
MaxTenuringThreshold
MaxThinLockRecursion
MaxValueNodesPartialEscapeSelectiveInlining
MaxVectorAlignmentUnroll
MaxVectorUnroll
MaximumTransitiveEnabledPullFactor
MidTierInversion
MidTierPartialUnrolling
MinBlockFrequencyPull
MinHeapDeltaBytes
MinHeapFreeRatio
MinPolymorphicDispatchProbability
MinRAMPercentage
MinTLABSize
MinifyInvertedPhis
MinimalRegions
MinimumBlindedConstantSize
MultiExitCostFactor
MultiExitCostFactorSink
NewRatio
NewSize
NonCountedStripMinedBenefitBoost
NonCountedStripMiningForceStripAll
NonCountedStripMiningIgnoreSmallLoops
NonCountedStripMiningInnerLoopTrips
NonCountedStripMiningMaximumInnerLoopTrips
NonCountedStripMiningMinFrequency
NonCountedStripMiningMinimumInnerLoopTrips
NonCountedStripMiningReuseIVs
ObjectInlining
ObjectInliningConfigurationFiles
ObjectInliningConfigurationResources
OldPLABSize
OldSize
OptBulkAllocation
OptCompressedFrameStateValues
OptConditionalMoves
OptDeDuplication
OptDuplication
OptExactArithmetic
OptFastMonitorExit
OptGuardRangeGrouping
OptInlineImageHeapConstants
OptLateDuplication
OptLockElimination
OptLoopPhiStamps
OptPropagateEquality
OptPullThroughPhi
OptStringConcat
OptStringConcatDump
OptStringConcatDumpUnhandled
OptWriteBarrierElimination
OptWriteMotion
OptimisticAliasingAnalysis
OptimizeLoopAccesses
PGOInstrument
PGOPathProfile
PGOPathProfileVerify
PLABWeight
ParGCArrayScanChunk
ParallelGCBufferWastePct
ParallelGCThreads
ParallelRefProcBalancingEnabled
ParallelRefProcEnabled
PartialRedundancyElimination
PartialUnrollCostReductionFactorHighTier
PartialUnrollCostReductionFactorMidTier
PartialUnrollMaxIterationsHighTier
PartialUnrollMaxIterationsMidTier
PartialUnrollMaxSizeHighTier
PartialUnrollMaxSizeMidTier
PartialUnrollMinFrequency
PathProfileCutThreshold
PathProfileDumpFile
PathProfileFrequentThreshold
PathProfileGlobalLowFrequencyRatio
PathProfileLocalLowFrequencyRatio
PathProfileMaxTotalCounters
PathProfilePolicy
PathProfileRegenerate
PeelFoldFactor
PeelingConsideredMinFrequency
PenalizeComplexLoopControlFlow
PerfDataMemorySize
PerfDataSamplingInterval
PerfMaxStringConstLength
PhiMinificationMinimalLoopFrequency
PreTouchParallelChunkSize
PrefetchCopyIntervalInBytes
PrefetchScanIntervalInBytes
PrintPGOStatistics
PriorityInliningPolicy
PriorityInliningTuningPolicy
ProfileDumpPeriod
ProfileLockElimination
ProfileOptBulkAllocation
ProfileSelfTime
ProfilesCollect
ProfilesDumpFile
ProfilesUse
ProfilingPointRequiredHitCount
PropagateEqualityDepth
ProtectionKeys
PruneLargeDominatorUsageTrees
PullThroughPhiCodeSizeIncrease
QueuedAllocationWarningCount
ReadProxySchedulingStrategy
RefDiscoveryPolicy
RelativeBenefitInliningCoefficient
ReservedAuxiliaryImageBytes
ResizePLAB
ResizeTLAB
RespectVectorization
RotateNonLeafLoops
RuntimeDebugInfo
RuntimeSourceDestDir
SIMDVectorizationDirectLoadStore
SIMDVectorizationSingletons
SIMDVectorizationVolatileLoads
SIMDVectorizationVolatileWrites
SIMDVectorizationWindowSize
SafepointCheckInEpilogue
ScheduledDuplicationSimulation
SimulationBasedLoopPeeling
SimulationPruneUnlikelyBranches
SmallRootIrPenaltyCoefficient
SourceLevelDebug
SourceLevelDebugFilter
SourceSearchPath
SpeculativeStoreCheck
StackOverflowCheckInPrologue
StripDebugInfo
StripMineNonCountedLoops
SurvivorRatio
TLABAllocationWeight
TLABRefillWasteFraction
TLABSize
TLABWasteIncrement
TLABWasteTargetPercent
TargetPLABWastePct
TargetSurvivorRatio
TimeStampProfiling
TraceAuxiliaryImageClassHistogram
TraceAuxiliaryImageReferenceTree
TrackGraphSizesInDuplication
TrackInliningStatistics
TrivialLoopSizeLimitForPeeling
TryExplodeOverPhis
TryPhiPhiPulls
TuneInlinerExploration
TypeFlowPrinterInRadius
TypeFlowPrinterOutRadius
TypicalCallGraphSize
TypicalGraphSize
TypicalGraphSizeInvokeBonus
TypicalGraphSizeMax
UnrollEmptyLoops
UnrollInvertedLoops
UnrollMultiEndLoops
UnrollMultiExitLoops
UseCompressedReferenceShift
UseCompressedReferences
UseDynamicNumberOfGCThreads
UseG1GC
UseGraphCache
UseImagebuildDebugSections
UseInlinedPythonHelper
UseMonitorFastPath
UsePartialEscapeSelectiveInlining
UsePerfData
UsePriorityInlining
UseStringInlining
UseTLAB
UseThinLocking
UseTypedArguments
UseTypedResult
VTuneAbsoluteFilenames
VTunePath
VectorFoldMinIterations
VectorIntrinsics
VectorPolynomialIntrinsics
VectorUnroll
Vectorization
VectorizeAllocation
VectorizeConditional
VectorizeDeopts
VectorizeFoldShaped
VectorizeGather
VectorizeHashes
VectorizeLoops
VectorizeMapShaped
VectorizeNegativeStride
VectorizeSIMD
VectorizeSafepoints
VectorizeSequence
VerificationDumpFile
VerifyAfterGC
VerifyBeforeGC
VerifyDuplicationOperations
VerifyDuringGC
VerifyGCStartAt
VerifyLoopVectorization
VerifyPGOProfiles
VerifyRememberedSets
VerifyWriteBarrierElimination
Virtualize
YoungPLABSize
ZeroTLAB