News for hackers. Stuff that matters.
Re:The C11 and C++11 Concurrency Model (2014) [pdf] by en4bz on Saturday November 28, 2015 @08:22PM (#10643333)
Relaxed is useful when you need atomicity but not consistency between cores. x86 guarantees that all reads/writes are atomic, i.e. no torn reads/writes but I don't think all architectures have this guarantee.

Also there maybe times in your program where you know that your thread has exclusive access to the variable during a certain segment of the program. During this segment it may be beneficial to do lazy reads/writes then complete the critical section with a release operation.

This is used heavily in single producer single consumer queues.

Re:The C11 and C++11 Concurrency Model (2014) [pdf] by PeCaN on Sunday November 29, 2015 @02:53AM (#10644094)
Minor nitpick, but x86 only guarantees atomic reads/writes for properly aligned values. I believe ARM is the same, but not very sure about that.