RE: JavaMemoryModel: Semantics musings

From: David Holmes ([email protected])
Date: Tue Sep 25 2001 - 19:49:08 EDT


> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]]On Behalf Of Bill Pugh
>
> This program is correctly synchronized and therefore must execute
> according to sequentially consistent semantics.
>
> The basic definition of "correctly synchronized" is, for all
> sequentially consistent executions of the program, an ordering
> consistent exists between any two conflicting accesses to a variable.

Okay I'll bite. How can the program be correctly synchronized when it
contains no synchronization code? If it did contain synchronization code
then any execution produced by the compiler/runtime/hardware must be
consistent with a sequentially consistent execution. As it stands, unless we
have decided for sequentially consistent semantics as a baseline for
unsynchronized code, then the compiler/runtime/hw can do whatever it likes
as long as the actions in each thread are consistent with the code in that
thread.

David Holmes

-------------------------------
JavaMemoryModel mailing list - http://www.cs.umd.edu/~pugh/java/memoryModel



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