RE: JavaMemoryModel: Semantics musings

From: David Holmes (dholmes@dltech.com.au)
Date: Tue Sep 25 2001 - 19:49:08 EDT


> -----Original Message-----
> From: owner-javamemorymodel@cs.umd.edu
> [mailto:owner-javamemorymodel@cs.umd.edu]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