[cpp-threads] cpp-threads Digest, Vol 38, Issue 1

Paul E. McKenney paulmck at linux.vnet.ibm.com
Thu Aug 5 23:52:49 BST 2010


On Thu, Aug 05, 2010 at 01:46:03PM +0100, Mark Batty wrote:
> The proposal looks good for the most part, but there are two changes
> that would be good to make. Firstly, we have a proof that with the
> added coherence axioms, visible sequences of side effects are unique,
> so I suggest adding the following note to 1.10p13 (this addresses
> Paul's comment):
> 
> "[Note - It can be shown that the visible sequence of side effects of
> a value computation is unique given the coherence requirements below.
> - end note]"

Whew!!!  My intuition feels -much- better now.  ;-)

> Secondly, in the Read-Read requirement, B gets its value indirectly,
> taking the value of A (another read). The following wording is more
> direct:
> 
> "-Read Read:
> If a value computation A of an atomic object M happens before a value
> computation B of M, and A takes its value from the side effect X, then
> the value computed by B shall either be the value stored by X, or the
> value stored by a side effect Y, where Y follows X  in the
> modification order of M."

This looks good to me.

							Thanx, Paul

> I hope the rest of the meeting is going well,
> Mark
> 
> 
> 
> On Thu, Aug 5, 2010 at 12:00 PM,  <cpp-threads-request at decadent.org.uk> wrote:
> > Send cpp-threads mailing list submissions to
> >        cpp-threads at decadent.org.uk
> >
> > To subscribe or unsubscribe via the World Wide Web, visit
> >        http://www.decadent.org.uk/cgi-bin/mailman/listinfo/cpp-threads
> > or, via email, send a message with subject or body 'help' to
> >        cpp-threads-request at decadent.org.uk
> >
> > You can reach the person managing the list at
> >        cpp-threads-owner at decadent.org.uk
> >
> > When replying, please edit your Subject line so it is more specific
> > than "Re: Contents of cpp-threads digest..."
> >
> >
> > Today's Topics:
> >
> >   1. Coherence Requirement wording changes for 1.10p13 (Michael Wong)
> >   2. Re: Coherence Requirement wording changes for 1.10p13
> >      (Paul E. McKenney)
> >   3. Re: Coherence Requirement wording changes for 1.10p13 (Hans Boehm)
> >   4. Re: Coherence Requirement wording changes for 1.10p13
> >      (Peter Dimov)
> >
> >
> > ----------------------------------------------------------------------
> >
> > Message: 1
> > Date: Tue, 3 Aug 2010 16:52:53 -0400
> > From: Michael Wong <michaelw at ca.ibm.com>
> > Subject: [cpp-threads] Coherence Requirement wording changes for
> >        1.10p13
> > To: cpp-threads at decadent.org.uk
> > Message-ID:
> >        <OFDD7C8FC8.8576BBB0-ON85257774.00722617-85257774.0072B28D at ca.ibm.com>
> > Content-Type: text/plain; charset="us-ascii"
> >
> >
> >
> > Hi all, Benjamin Kosnick and I have made the following updates to the
> > coherence requirement paragraph based on today session with Peter Sewell
> > and Mark Batty. It is available for viewing on the Rapperswil concurrence
> > wiki:
> > http://wiki.dinkumware.com/twiki/pub/Wg21rapperswil/ConcurrencyWorkingGroup/Coherence_Requirement.html
> >
> > This is to fix several NB comments GB 11, GB 12, CA 18, CA 19, CA 20.
> > We are asking for feedback comments of this restructuring and the insertion
> > of the new paragraphs for CORW and COWR as outlined in Sections 2.1 and 2.2
> > in their paper:
> > http://wiki.dinkumware.com/twiki/pub/Wg21rapperswil/ConcurrencyWorkingGroup/cpp-fcd-01.pdf
> >
> > This will not be voted at the end of this week, but we want to have this
> > early drafting ready for review comment to make sure we are heading in the
> > right direction, and if all goes well, we propose to potentially add
> > diagrams of each of the coherence requirements as discussed today.
> >
> > Thanks.
> >
> > Regards, Michael
> >
> > Rational C/C++ cafe:
> > http://www.ibm.com/software/rational/cafe/community/ccpp
> > My Blogs:
> > Parallel & Multi-Core Computing
> > http://www.ibm.com/software/rational/cafe/blogs/ccpp-parallel-multicore
> > C++ Language & Standard
> > http://www.ibm.com/software/rational/cafe/blogs/cpp-standard
> > Commercial Computing
> > http://www.ibm.com/software/rational/cafe/blogs/ccpp-commercial
> > Boost test results
> > http://www.ibm.com/support/docview.wss?rs=2239&context=SSJT9L&uid=swg27006911
> >
> > C/C++ Compilers Support Page
> > http://www.ibm.com/software/awdtools/ccompilers/support/
> > C/C++ Feature Request Interface
> > http://www.ibm.com/support/docview.wss?uid=swg27005811
> > XL Fortran Compiler Support Page
> > http://www.ibm.com/software/awdtools/fortran/xlfortran/support/
> > XL Fortran Feature Request Interface
> > http://www.ibm.com/support/docview.wss?uid=swg27005812
> >
> > Michael Wong
> > XL C++ Compiler kernel Development
> > IBM Canada Ltd., C2/KD2/8200/MKM
> > 8200 Warden Avenue
> > Markham, Ontario  L6G 1C7
> > W:905-413-3283 F:905-413-4839
> > -------------- next part --------------
> > An HTML attachment was scrubbed...
> > URL: <http://www.decadent.org.uk/pipermail/cpp-threads/attachments/20100803/1210d188/attachment.html>
> >
> > ------------------------------
> >
> > Message: 2
> > Date: Wed, 4 Aug 2010 17:53:13 -0700
> > From: "Paul E. McKenney" <paulmck at linux.vnet.ibm.com>
> > Subject: Re: [cpp-threads] Coherence Requirement wording changes for
> >        1.10p13
> > To: C++ threads standardisation <cpp-threads at decadent.org.uk>
> > Message-ID: <20100805005312.GQ24163 at linux.vnet.ibm.com>
> > Content-Type: text/plain; charset=us-ascii
> >
> > On Tue, Aug 03, 2010 at 04:52:53PM -0400, Michael Wong wrote:
> >>
> >>
> >> Hi all, Benjamin Kosnick and I have made the following updates to the
> >> coherence requirement paragraph based on today session with Peter Sewell
> >> and Mark Batty. It is available for viewing on the Rapperswil concurrence
> >> wiki:
> >> http://wiki.dinkumware.com/twiki/pub/Wg21rapperswil/ConcurrencyWorkingGroup/Coherence_Requirement.html
> >>
> >> This is to fix several NB comments GB 11, GB 12, CA 18, CA 19, CA 20.
> >> We are asking for feedback comments of this restructuring and the insertion
> >> of the new paragraphs for CORW and COWR as outlined in Sections 2.1 and 2.2
> >> in their paper:
> >> http://wiki.dinkumware.com/twiki/pub/Wg21rapperswil/ConcurrencyWorkingGroup/cpp-fcd-01.pdf
> >>
> >> This will not be voted at the end of this week, but we want to have this
> >> early drafting ready for review comment to make sure we are heading in the
> >> right direction, and if all goes well, we propose to potentially add
> >> diagrams of each of the coherence requirements as discussed today.
> >
> > Hello, Michael,
> >
> > I like the way this breaks out the write/write, read/read, ... cases!
> >
> > But given the restrictions imposed by these cases, is it really possible
> > to have more than one visible sequence of side effects?
> >
> >                                                        Thanx, Paul
> >
> >
> >
> > ------------------------------
> >
> > Message: 3
> > Date: Wed, 4 Aug 2010 21:48:36 -0700 (PDT)
> > From: Hans Boehm <Hans.Boehm at hp.com>
> > Subject: Re: [cpp-threads] Coherence Requirement wording changes for
> >        1.10p13
> > To: C++ threads standardisation <cpp-threads at decadent.org.uk>
> > Message-ID: <alpine.LNX.1.10.1008042131590.25429 at 192.168.2.2>
> > Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
> >
> >
> > I looked at this and the corresponding section of the Batty et al paper.
> > The changes look good to me.  The WriteRead issue looks like a
> > longstanding bug, with the ReadWrite issue getting more recently
> > introduced.
> >
> > (I wasn't immediately convinced by the WriteRead example, since I think
> > there is nothing in the example forcing the f->c modification order.
> > But on second thought it's trivial to enforce such a constraint.)
> >
> > It's great that we have a proposed fix.  But I also agree that this needs
> > some baking time.
> >
> > Hans
> >
> > On Tue, 3 Aug 2010, Michael Wong wrote:
> >
> >>
> >> Hi all, Benjamin Kosnick and I have made the following updates to the
> >> coherence requirement paragraph based on today session with Peter Sewell
> >> and Mark Batty. It is available for viewing on the Rapperswil concurrence
> >> wiki:
> >> http://wiki.dinkumware.com/twiki/pub/Wg21rapperswil/ConcurrencyWorkingGroup/Cohe
> >> rence_Requirement.html
> >>
> >> This is to fix several NB comments GB 11, GB 12, CA 18, CA 19, CA 20.
> >> We are asking for feedback comments of this restructuring and the
> >> insertion of the new paragraphs for CORW and COWR as outlined in Sections
> >> 2.1 and 2.2 in their paper:
> >> http://wiki.dinkumware.com/twiki/pub/Wg21rapperswil/ConcurrencyWorkingGroup/cpp-
> >> fcd-01.pdf
> >>
> >> This will not be voted at the end of this week, but we want to have this
> >> early drafting ready for review comment to make sure we are heading in
> >> the right direction, and if all goes well, we propose to potentially add
> >> diagrams of each of the coherence requirements as discussed today.
> >>
> >> Thanks.
> >>
> >> Regards, Michael
> >>
> >> Rational C/C++ cafe:
> >> http://www.ibm.com/software/rational/cafe/community/ccpp
> >> My Blogs:
> >> Parallel & Multi-Core Computing
> >> http://www.ibm.com/software/rational/cafe/blogs/ccpp-parallel-multicore
> >> C++ Language & Standard
> >> http://www.ibm.com/software/rational/cafe/blogs/cpp-standard
> >> Commercial Computing
> >> http://www.ibm.com/software/rational/cafe/blogs/ccpp-commercial
> >> Boost test results
> >> http://www.ibm.com/support/docview.wss?rs=2239&context=SSJT9L&uid=swg27006911
> >> C/C++ Compilers Support Page
> >> http://www.ibm.com/software/awdtools/ccompilers/support/
> >> C/C++ Feature Request Interface
> >> http://www.ibm.com/support/docview.wss?uid=swg27005811
> >> XL Fortran Compiler Support Page
> >> http://www.ibm.com/software/awdtools/fortran/xlfortran/support/
> >> XL Fortran Feature Request Interface
> >> http://www.ibm.com/support/docview.wss?uid=swg27005812
> >>
> >> Michael Wong
> >> XL C++ Compiler kernel Development
> >> IBM Canada Ltd., C2/KD2/8200/MKM
> >> 8200 Warden Avenue
> >> Markham, Ontario L6G 1C7
> >> W:905-413-3283 F:905-413-4839
> >>
> >>
> >>
> >
> >
> >
> > ------------------------------
> >
> > Message: 4
> > Date: Thu, 5 Aug 2010 13:12:45 +0300
> > From: "Peter Dimov" <pdimov at mmltd.net>
> > Subject: Re: [cpp-threads] Coherence Requirement wording changes for
> >        1.10p13
> > To: "C++ threads standardisation" <cpp-threads at decadent.org.uk>
> > Message-ID: <1346A4310B014CC5A2714B574768AB12 at pdimov5>
> > Content-Type: text/plain; format=flowed; charset="iso-8859-1";
> >        reply-type=response
> >
> > Hans Boehm wrote:
> >> I looked at this and the corresponding section of the Batty et al paper.
> >> The changes look good to me.  The WriteRead issue looks like a
> >> longstanding bug, with the ReadWrite issue getting more recently
> >> introduced.
> >
> > Looks good to me, too. I view this as a formalization of the old requirement
> > that the happens-before order and the modification order should be
> > "consistent" - this spells out what consistency means.
> >
> >
> >
> >
> > ------------------------------
> >
> > --
> > cpp-threads mailing list
> > cpp-threads at decadent.org.uk
> > http://www.decadent.org.uk/cgi-bin/mailman/listinfo/cpp-threads
> >
> >
> > End of cpp-threads Digest, Vol 38, Issue 1
> > ******************************************
> >
> 
> --
> cpp-threads mailing list
> cpp-threads at decadent.org.uk
> http://www.decadent.org.uk/cgi-bin/mailman/listinfo/cpp-threads



More information about the cpp-threads mailing list