ds_permute_b32 GPU Native ISA AMD Vector
DS PERMUTE B32 Lane Operations
ds_permute_b32 VDST, ADDR, DATA
Forward-permute: each lane sends its value to a lane index computed by another lane, via the LDS crossbar (no LDS storage consumed).
Encoding
Verified bit-level encoding data is not yet available for this instruction.
The instruction-format classification below (DS)
is well-documented and stable; exact per-target opcode/field bit positions have not
yet been imported from a verified source.
Operands
-
VDST
Destination VGPR -
ADDR
Per-lane destination-lane selector -
DATA
Per-lane value to send
GFX Target Compatibility
| Target | Support |
|---|---|
| gfx942 | ✅ Supported |
| gfx1100 | ✅ Supported |
Related PTX Concepts
Related
More in Lane Operations
Reference
AMDGPU / GFX ISA
Description
Forward permute. This does not access LDS memory and may be called even if no LDS memory is allocated to the wave. It uses LDS to implement an arbitrary swizzle across threads in a wavefront.
Semantics
VDST[dst_lane(lane)] = DATA[lane], where dst_lane is computed per-lane from ADDR; lanes that receive no value read undefined/zero depending on target.
Example
ds_permute_b32 v1, v0, v2 // v1[lane] = v2[dest_lane(v0[lane])]Original illustrative example, written for this site (not reproduced from a specific AMD document).
Sources
- AMD Machine-Readable GPU ISA Specification ↗ - Advanced Micro Devices, Inc.