[cpp-threads] Preparing for Oxford

Peter Dimov pdimov at mmltd.net
Sat Dec 30 15:25:08 GMT 2006


Herb Sutter wrote:

> Thinking over the past month's discussion, what effect will/should
> this have on the C++ MM and atomics proposals for the April meet in
> Oxford? Here's my suggestion:
>
>   1. Eliminate, or at least split out, the low-level non-SC atomics
> features.
>   2. Add type abstractions for a few key uses of non-SC atomics
> (e.g., DCL, RC).
>   3. (Hard to do for Oxford) Simplify the proposal to use a single
> ordering relation.

I'm probably missing some background information here. Do you have a current 
spec for Prism?

By SC atomics you probably mean sequentially consistent atomics a-la Java 
volatile, right? These are not efficiently implementable on any present 
hardware because of the required #StoreLoad fences, and are not expressible 
in a pure acquire/release model. The most prevalent 'strong' hardware memory 
model is x86, which is not sequentially consistent. Emulating SC under x86 
can kill quite a bit of performance.

> My own opinion is that, regardless of what we bless or don't bless,
> the market will probably tend to select for hardware with efficient
> SC atomics anyway (because non-SC atomics aren't reliably
> programmable by humans).

The market has already selected a hardware memory model, and it isn't SC. 




More information about the cpp-threads mailing list