What exactly shared means?

via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Sat Jan 3 04:12:46 PST 2015


On Saturday, 3 January 2015 at 10:13:52 UTC, John Colvin wrote:
> The Java, C11 and C++11 memory model.

Well...

http://en.cppreference.com/w/cpp/atomic/memory_order

> Yes, I was hoping that perhaps you knew more specifics. AFAIK, 
> when not restricted by any kind of barriers, SC-DRF does not 
> have a particularly significant cost.

I think that even with lock free datastructures such as Intel 
Threaded Building Blocks, you would still gain from using a 
non-synchronizing API where possible. In real code you have 
several layers for functioncalls, so doing this by hand will 
complicate the code.

If you can propagate knowledge down the call chain about locality 
and the semantics of object interfaces or clusters of objects, 
then you can relax restrictions on the optimizer and get better 
performance on real-world code. This would be a natural direction 
for D, since it is already encouraging templated code.

The alternative is to hand code this where it matters, but that 
is inconvenient...


More information about the Digitalmars-d-learn mailing list