Expand description
Built-in SoftGPU Functional IR kernels (Rust builders + JSON twins).
Functions§
- atomic_
inc_ reduce - SoftGPU Phase 7: each lane
atomic_add(counter, 1); write previous value toout[i]. - cross_
workgroup_ store_ zero - SoftGPU Phase 8 (negative): every workgroup stores to the same global cell.
- group_
exchange - SoftGPU Phase 7:
group[lid]=lid; barrier; out[gid]=group[(lid+1)%wg]. - group_
exchange_ missing_ barrier - SoftGPU Phase 8 (negative): group exchange without barrier (MissingBarrier).
- infinite_
loop_ watchdog - SoftGPU Phase 7: busy loop until step budget trips (watchdog).
- kernarg_
one_ ptr - kernarg_
two_ ptrs - Pack two u64 pointers into a 16-byte kernarg.
- oob_
store_ past_ end - SoftGPU Phase 8 (negative): store at
base + (n * 4)— one past last element. - predicated_
inc - SoftGPU Phase 7: even lanes add 1 to
buf[i]; odd lanes leave value unchanged. - race_
all_ store_ global_ zero - SoftGPU Phase 8 (negative): every workitem stores to global offset 0 (race).
- sanitize_
clean_ index - SoftGPU Phase 8 (positive): private per-lane global store (no race).
- tiny_
add b[i] = a[i] + 1for i = global_id_x. Pointers in kernarg at 0 and 8.- tiny_
copy b[i] = a[i]copy.- tiny_
index out[i] = global_id_x(index write).- uninit_
group_ read - SoftGPU Phase 8 (negative): read group memory before any store (uninit).
- wave_
lane_ ids - SoftGPU Phase 7: write
(wave_id * 16) + lane_idtoout[global_id].