Re: JavaMemoryModel: Another software-only solution

From: Joel Jones (jjones@uiuc.edu)
Date: Fri Jul 02 1999 - 12:06:06 EDT


First an introduction:

I am Joel Jones, a PhD student at the University of Illinois at
Urbana-Champaign. My research is on annotating Java .class files in a
machine-independent fashion to support machine-dependent optimizations in a
modified JVM JIT. I am on this mailing list because in my quest for
understanding exactly what optimizations are thread-safe, I found chapter
17 less than enlightening.

Raymie Stata <stata@pa.dec.com> stated:

> The more ordering constraints there are in the JMM semantics, the
> harder those semantics will be to implement on relaxed-order
> architectures such as Alpha, PowerPC, and IA-64. This observation
> primarily affects two requirements being considered for the JMM
> semantics: that the JMM semantics preserve Java's safety guarantees,
> and that the JMM semantics support the synchronization-free
> initialize-then-publish programming idiom. There's clear consensus
> that preserving the safety guarantees must be a requirement, no
> matter the difficulties that requirement poses on relaxed-order
> architectures. There is no consensus on whether the
> initialize-then-publish idiom is so important that it must be
> supported despite the implementation difficulties it poses on
> relaxed-order machines.

I would support this, with a slight change --- add efficiently after "to
implement" in the first sentence. These architectures provide enough
synchronization primitives to ensure everything grinds to a single
sequentially consistent thread.

Joel Jones PressPot: Annotating Java for Performance
jjones@uiuc.edu http://mtdoom.cs.uiuc.edu/PressPot.html

-------------------------------
This is the JavaMemoryModel mailing list, managed by Majordomo 1.94.4.

To send a message to the list, email JavaMemoryModel@cs.umd.edu
To send a request to the list, email majordomo@cs.umd.edu and put
your request in the body of the message (use the request "help" for help).
For more information, visit http://www.cs.umd.edu/~pugh/java/memoryModel



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