Load Buffer

The load buffer litmus test checks to see if loads can be buffered and re-ordered on different threads. Variants using the release/acquire workgroup control barrier are also included.

Initial State *x = 0, *y = 0 Final State: r0 == 1 && r1 == 1
Workgroup 0 Thread 0
0.1: let r0 = atomicLoad(y)
0.2: atomicStore(x, 1)
Workgroup 1 Thread 0
1.1: let r1 = atomicLoad(x)
1.2: atomicStore(y, 1)
Explorer Mode
Tuning Mode

Weak Outcome Count: 0

Total Observed Outcomes: 0

Weak Outcome Percentage: 0.00%

Weak Outcome: r0 == 1 && r1 == 1

Run time : 0 seconds

Rate : NaN iterations per second

Time Remaining : NaN seconds