Restrictions for lock coarsening?
Christian Thalinger
christian.thalinger at gmail.com
Thu Jan 8 11:39:12 PST 2009
On Thu, 2009-01-08 at 11:06 -0800, Tom Rodriguez wrote:
> The delay is actually a timeout for a periodic one-shot task so I
> don't think it triggers until the initial jvm bootstrap finishes. It
> before main runs though so it should get everything interesting. A
> absolutely accurate comparison would require modifying the VM.
When using zero as timeout, BiasedLocking::init() instantiates
VM_EnableBiasedLocking right away without using the one-shot task:
if (BiasedLockingStartupDelay > 0) {
EnableBiasedLockingTask* task = new EnableBiasedLockingTask(BiasedLockingStartupDelay);
task->enroll();
} else {
VM_EnableBiasedLocking op(false);
VMThread::execute(&op);
}
But the BiasedLocking::init() call is almost the last call in
Thread::create_vm(). So, some locks may have already been created. But
this is just a guess.
- Christian
More information about the hotspot-runtime-dev
mailing list