Synchronous baseline
One thread per point in 32×8 blocks, ping-pong buffers. A reduction kernel computes both residual norms every M sweeps with warp shuffles and copies them to the host, which decides whether to continue.
Strengthened later with a fused right-hand side (uⁿ + Δt·f computed once per step), cutting traffic from 16 to 12 bytes per point per sweep.
- Sweeps/launch
- 1
- Staleness
- 0
- Exact
- yes