22 Sep
2013
22 Sep
'13
11:56 p.m.
On 9/22/2013 9:30 AM, Quoth Niall Douglas:
On Intel, it's very tough to debug relaxed memory order code as Intel does very litle reordering relative to other CPUs.
ARM is better, but I believe it needs an Alpha to really get the bugs out.
There is, surely, some magic tool for LLVM somewhere which will output all programs doing all possible reordering combinations for some bit of code. That would reveal bugs even on Intel.
I used "Relacy Race Detector" a while back to test some lock-free algorithms. It does require a little bit of rewriting to instrument the code but it's pretty straightforward.