From owner-sc22wg5@open-std.org  Thu Apr 22 17:53:29 2010
Return-Path: <owner-sc22wg5@open-std.org>
X-Original-To: sc22wg5-dom8
Delivered-To: sc22wg5-dom8@www2.open-std.org
Received: by www2.open-std.org (Postfix, from userid 521)
	id 0E30CC3BA1F; Thu, 22 Apr 2010 17:53:29 +0200 (CET DST)
X-Original-To: sc22wg5@open-std.org
Delivered-To: sc22wg5@open-std.org
Received: from ironport2.lbl.gov (ironport2.lbl.gov [128.3.41.14])
	by www2.open-std.org (Postfix) with ESMTP id 25C38C178D9
	for <sc22wg5@open-std.org>; Thu, 22 Apr 2010 17:53:26 +0200 (CET DST)
X-Ironport-SBRS: None
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: ApsEAH8N0EuAAwU8/2dsb2JhbACdGL9+AoJzghoEgzQ
X-IronPort-AV: E=Sophos;i="4.52,257,1270450800"; 
   d="scan'208";a="108962616"
Received: from angilas.lbl.gov (HELO angilas.localnet) ([128.3.5.60])
  by ironport2.lbl.gov with ESMTP/TLS/DHE-RSA-AES256-SHA; 22 Apr 2010 08:53:24 -0700
From: Aleksandar Donev <adonev@lbl.gov>
Organization: LBL
To: WG5 <sc22wg5@open-std.org>
Subject: Re: (j3.2006) (SC22WG5.4258) [ukfortran]  Question on locks
Date: Thu, 22 Apr 2010 08:53:24 -0700
User-Agent: KMail/1.11.2 (Linux/2.6.28-17-generic; KDE/4.2.2; x86_64; ; )
References: <20100421204947.D8CC7C178DA@www2.open-std.org> <20100421221958.90A94C4E9FA@www2.open-std.org> <20100422073128.25D2DC178D9@www2.open-std.org>
In-Reply-To: <20100422073128.25D2DC178D9@www2.open-std.org>
MIME-Version: 1.0
Content-Type: Text/Plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
Message-Id: <201004220853.24260.adonev@lbl.gov>
Sender: owner-sc22wg5@open-std.org
Precedence: bulk

On Thursday 22 April 2010, Reinhold Bader wrote:

> (hopefully correctly) understand it is needed here since the
> "user-defined way" described in NOTE 8.41 does not imply the one way
> ordering enforced by the semantics of LOCK.
There is no user-defined ordering without a sync memory. That is, user-
defined ordering needs to order segments, and without a sync memory 
there is no segment boundary so there is nothing to order. Thus, you 
always need them for user-defined ordering. For built-in 
synchronizations, like SYNC ALL or LOCKs, the segments are delineated 
and ordered as specified in the standard.

As to the "implicit sync memory" in some of the built ins, we had 
arguments about that (I wanted to remove that since I believe it is not 
necessary and does more harm than good...your question being to the 
point...but I lost or resigned to what is there in order to reach 
peace). My belief (maybe not shared by all on HPC subgroup) is that one 
never needs sync memories, explicit or implicit, with the built-in 
mechanisms. So you can simply forget about sync memory, as if it did not 
exist in the standard at all, *unless* you want to go beyond the built-
in mechanisms.

Best,
Aleks

-- 
Aleksandar Donev, Ph.D.
Luis W. Alvarez Postdoctoral Fellow
Center for Computational Sciences and Engineering (https://ccse.lbl.gov)
Lawrence Berkeley National Laboratory (http://www.lbl.gov)
E-mail: adonev@lbl.gov
Phone: (510) 486-5782  Fax: (510) 486-6900
Address: MS 50A-1148, LBL, 1 Cyclotron Rd., Berkeley, CA 94720
Web: http://cims.nyu.edu/~donev/

