atom GPU Virtual ISA NVIDIA
Atomic Read-Modify-Write Atomic Memory
atom.space.op.type d, [a], b;
Atomically read-modify-write a memory location and return the prior value.
Encoding
PTX is a virtual instruction set. It has no single, stable native
binary encoding — the compiler lowers this instruction to different native machine
code depending on the selected NVIDIA target architecture (compute capability).
This page intentionally shows no bit-diagram; see the target/version requirements
below for what governs how this instruction compiles.
Syntax Forms
One mnemonic covers many type / state-space / scope / modifier combinations — each row below is an independently valid form.
| Syntax | Data Types | State Space(s) | Modifiers | Min. Target | Description |
|---|---|---|---|---|---|
| atom.space.op.type d, [a], b; | b32, b64, s32, u32, u64, f32, f64 | global, shared | add, min, max, and, or, xor, exch, cas, inc, dec | sm_11 | Atomic operation; op selects the read-modify-write function. |
Operands
-
d
Destination register (receives the pre-operation value) -
a
Memory address -
b
Operand value
At a Glance
Related AMDGPU Concepts
Reference
NVIDIA PTX ISA
Semantics
d = *a; *a = op(*a, b); indivisible with respect to other threads targeting the same address.
Sources
- Parallel Thread Execution ISA ↗ — NVIDIA Corporation, Chapter 9 — Instruction Set