[cpp-threads] Alternatives to SC

Raul Silvera rauls at ca.ibm.com
Tue Jan 16 19:01:25 GMT 2007


Alexander Terekhov" <alexander.terekhov at gmail.com:
> 
> But given that for "[s]tores to storage that is Memory Coherence
> Required and is neither Write Through Required nor Caching Inhibited"
> eieio is also cumulative...
> 
> P1: x = 1;
> P2: if (x == 1) eieio(), y = 2;
> P3: if (y == 2) isync(), assert(x == 1);
> 
> Would also do it, I suppose. ("Storage that is Write Through Required
> or Caching Inhibited is not intended to be used for general-purpose
> programming.")

Almost, but not quite. While it is true that the control-flow dependence 
orders x==1 and y=2 on P2, that ordering is not cumulative.
eieio does provide cumulative ordering, but only orders stores (in this 
scenario), so it doesn't apply to the pair x==1 and y=2.

> Now, when are we going to have totally naked cumulative fence (a beast
> without extra features of eieio, {lw}sync, or whatever) for
> general-purpose programming on Power? ;-)
> 
> regards,
> alexander.
> 
> -- 
> cpp-threads mailing list
> cpp-threads at decadentplace.org.uk
> http://www.decadentplace.org.uk/cgi-bin/mailman/listinfo/cpp-threads
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.decadentplace.org.uk/pipermail/cpp-threads/attachments/20070116/e549c786/attachment.html


More information about the cpp-threads mailing list