[cpp-threads] Alternatives to SC

Peter Dimov pdimov at mmltd.net
Fri Jan 12 15:43:11 GMT 2007


Doug Lea wrote:
> Thanks for questions! Here are some pointwise clarifications:
>
> Paul E. McKenney wrote:
>>
>>>   * Local acyclicity: Each thread sees an acyclic order of events
>>>      that is consistent with program order.
>>
>> This property holds only for specially marked variables, right?
>
> Yes. For now, this considers only atomic variables that are
> accessed solely using via load<ordered> and store<ordered> (wrt
> the current atomics API).

Actually... I'm not sure whether anyone knows with certainty what <ordered> 
is supposed to mean, but last time I asked, we seemed to arrive at it being 
both an acquire and a release. Under this definition, load<ordered> and 
store<ordered> don't make sense, because acquire is only applicable to an 
operation that reads a value, and release only to operations that write a 
value. But it's possible that I'm misunderstanding something again, won't be 
a first.

Interestingly, N2145 allows store<ordered>, but not load<ordered>. 




More information about the cpp-threads mailing list