-
Enhancement
-
Resolution: Fixed
-
P4
-
10
-
b21
The current default value for BiasedLockingStartupDelay is 4000, which means that biased locking won't be enabled until after 4 seconds of runtime.
This will have the effect that all objects created before biased locking is enabled will have a different mark word value than the one used after biased locking has been enabled. This is a bit problematic for GCs using the mark word, since the mark then will have to be saved and later restored when the GC is done.
There is not much documentation around why this delay was added, but the idea seems to have been to improve performance later on in the run or possibly improve startup time.
Recent performance measurements doesn't show any significant changes in either startup or steady state performance between using the current delay or having no delay at all.
This will have the effect that all objects created before biased locking is enabled will have a different mark word value than the one used after biased locking has been enabled. This is a bit problematic for GCs using the mark word, since the mark then will have to be saved and later restored when the GC is done.
There is not much documentation around why this delay was added, but the idea seems to have been to improve performance later on in the run or possibly improve startup time.
Recent performance measurements doesn't show any significant changes in either startup or steady state performance between using the current delay or having no delay at all.
- csr for
-
JDK-8181778 Change default value of BiasedLockingStartupDelay to 0
-
- Closed
-