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 - Switch comparison of OpenJDK12 vs Oracle JDK12
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
JDK20
JDK21
Alibaba Dragonwell
JDK8
JDK11
JDK17
Amazon Corretto
JDK8
JDK11
JDK17
JDK19
Azul Systems
Zing
Zulu
JDK8
JDK11
JDK8
JDK11
JDK13
JDK15
JDK16
JDK17
JDK18
JDK19
BellSoft Liberica
JDK8
JDK11
JDK17
JDK18
JDK19
Eclipse Temurin
JDK8
JDK11
JDK17
JDK18
JDK19
GraalVM 22.3.0
JDK11
JDK17
JDK19
CE
EE
CE
EE
CE
EE
EE-only
EE-only
EE-only
GraalVM native-image 22.3.0
JDK11
JDK17
JDK19
CE
EE
CE
EE
CE
EE
EE-only
EE-only
EE-only
Microsoft
JDK11
JDK16
JDK17
OpenJ9
OpenJ9
Oracle
JDK6
JDK7
JDK8
JDK9
JDK10
JDK11
JDK12
JDK13
JDK14
JDK15
JDK16
JDK17
JDK18
JDK19
SAP SapMachine
JDK11
JDK17
JDK19
Oracle JDK12 changed default values for:
None
Oracle JDK12 added:
None
Oracle JDK12 removed:
ShenandoahAcmpBarrier
ShenandoahAllocFailureALot
ShenandoahAllocSpikeFactor
ShenandoahAllocationStallThreshold
ShenandoahAllocationThreshold
ShenandoahAllocationTrace
ShenandoahAllowMixedAllocs
ShenandoahAlwaysClearSoftRefs
ShenandoahAlwaysPreTouch
ShenandoahCASBarrier
ShenandoahCloneBarrier
ShenandoahCodeRootsStyle
ShenandoahCommonGCStateLoads
ShenandoahConcurrentScanCodeRoots
ShenandoahControlIntervalAdjustPeriod
ShenandoahControlIntervalMax
ShenandoahControlIntervalMin
ShenandoahCriticalControlThreadPriority
ShenandoahCriticalFreeThreshold
ShenandoahDecreaseRegisterPressure
ShenandoahDegeneratedGC
ShenandoahDontIncreaseWBFreq
ShenandoahElasticTLAB
ShenandoahEvacAssist
ShenandoahEvacReserve
ShenandoahEvacReserveOverflow
ShenandoahEvacWaste
ShenandoahFreeThreshold
ShenandoahFullGCThreshold
ShenandoahGCHeuristics
ShenandoahGarbageThreshold
ShenandoahGuaranteedGCInterval
ShenandoahHeapRegionSize
ShenandoahHumongousMoves
ShenandoahHumongousThreshold
ShenandoahImmediateThreshold
ShenandoahImplicitGCInvokesConcurrent
ShenandoahInitFreeThreshold
ShenandoahKeepAliveBarrier
ShenandoahLearningSteps
ShenandoahLoopOptsAfterExpansion
ShenandoahMarkLoopStride
ShenandoahMarkScanPrefetch
ShenandoahMaxRegionSize
ShenandoahMergeUpdateRefsMaxGap
ShenandoahMergeUpdateRefsMinGap
ShenandoahMinFreeThreshold
ShenandoahMinRegionSize
ShenandoahOOMDuringEvacALot
ShenandoahOptimizeInstanceFinals
ShenandoahOptimizeStableFinals
ShenandoahOptimizeStaticFinals
ShenandoahPacing
ShenandoahPacingCycleSlack
ShenandoahPacingIdleSlack
ShenandoahPacingMaxDelay
ShenandoahPacingSurcharge
ShenandoahParallelRegionStride
ShenandoahParallelSafepointThreads
ShenandoahPreclean
ShenandoahReadBarrier
ShenandoahRefProcFrequency
ShenandoahRegionSampling
ShenandoahRegionSamplingRate
ShenandoahSATBBarrier
ShenandoahSATBBufferFlushInterval
ShenandoahSATBBufferSize
ShenandoahStoreCheck
ShenandoahStoreValEnqueueBarrier
ShenandoahStoreValReadBarrier
ShenandoahSuspendibleWorkers
ShenandoahTargetNumRegions
ShenandoahTerminationTrace
ShenandoahUncommit
ShenandoahUncommitDelay
ShenandoahUnloadClassesFrequency
ShenandoahUpdateRefsEarly
ShenandoahVerify
ShenandoahVerifyLevel
ShenandoahWriteBarrier