Re: JavaMemoryModel: Reconsidering spurious wakeups

From: Martin Trotter (
Date: Thu Nov 27 2003 - 05:17:35 EST

>>The performance lost will be regained (in a matter of days?) by the
operation of Moore's law.

Sadly the Moores law argument is spurious ! The law involved is Darwins
and VM implementors are acutely aware that throwing away performance for
any reason will be punished severely by natural selection in the
marketplace. Hence companies such as IBM still invest hugely in JIT
technology despite the sad truth that the performance benefits in each
generation are barely comparable to the Moores law improvements in the
processors over the same period. The arguments in the J2ME space are even
more tricky. In that market the 'quality of service' delivered by the OS
is a key differentiator and there are many realtime OS's which are similar
but absolutely not the same. Threading is a key differentiator and the
last thing that customers want is for Java to 'insulate' them from the OS
threading semantics; they've just paid good money for them ! Many early
JVMs employed user level threading packages but these have been largely
overtaken by those which provide native threading as a very thin layer on
top of the OS. Hence I would argue strongly that we do not go down the
road of designing a 'better' threading layer which will need implementing
on top of all the offerings already in the market. Apart from the
technical difficulty (as amply demonstrated by the corrections to each
possible design offerred) we would end up with a layer that owned
significant amounts of duplicated state (eg the wait set which the OS
already carries) which would add footprint that would be significant in the
ME space.

Martin Trotter

JavaMemoryModel mailing list -

This archive was generated by hypermail 2b29 : Thu Oct 13 2005 - 07:00:55 EDT