Skip to content

kernel dialect

← Dialect reference

Kernel execution and synchronization operations.

Property Value
Bytecode dialect ID 0x10
Registered by default yes
Operations 52

Operations

Operation Summary
kernel.assert Runtime assertion inside a dispatchable kernel.
kernel.async.cluster.gather Initiate a workgroup-cluster asynchronous load from a global-like source view into a workgroup/shared-memory destination view.
kernel.async.cluster.gather.mask Predicated form of kernel.async.cluster.gather.
kernel.async.copy Initiate an asynchronous byte-for-byte transfer between two already originated views.
kernel.async.copy.mask Predicated form of kernel.async.copy.
kernel.async.gather Initiate a subgroup-collective asynchronous gather from each invocation's source view into a lane-contiguous workgroup destination view.
kernel.async.gather.mask Predicated form of kernel.async.gather.
kernel.async.group Commit zero or more async copy/gather/cluster/tensor tokens into the ordered async stream.
kernel.async.tensor.load.to.lds Initiate an AMDGPU gfx1250+ tensor-memory load from a global-like source view into a workgroup/LDS destination view using an explicit kernel.tensor.lds.descriptor.
kernel.async.tensor.store.from.lds Initiate an AMDGPU gfx1250+ tensor-memory store from a workgroup/LDS source view into a global-like destination view using an explicit kernel.tensor.lds.descriptor.
kernel.async.wait Wait until a committed async-copy group has completed.
kernel.barrier Synchronize invocations in an explicit execution scope and fence a named memory space with a required ordering.
kernel.cluster.count Read the number of workgroup clusters in one dispatch dimension.
kernel.cluster.id Read one coordinate of the current workgroup cluster within the dispatch cluster grid.
kernel.cluster.size Read the selected workgroup-cluster extent.
kernel.cluster.workgroup.flat_id Read the row-major flat coordinate of the current workgroup within its workgroup cluster, with x as the minor dimension.
kernel.cluster.workgroup.id Read one coordinate of the current workgroup within its workgroup cluster.
kernel.decl Bodyless declaration of a dispatchable kernel.
kernel.def Dispatchable source-level kernel entry.
kernel.exit Conditionally leaves the current kernel before executing the following top-level kernel-body operations.
kernel.launch Launch a kernel with explicit workload and device-ABI operands.
kernel.launch.concurrent Run child launch schedules without dependency edges between siblings and join them on exit.
kernel.launch.config Terminate a kernel launch configuration region with the computed workgroup grid, required workgroup size, and optional static workgroup-cluster size.
kernel.launch.serial Order each child launch schedule after the preceding child completes.
kernel.launch.yield Terminate a structured kernel launch schedule region.
kernel.return Return from a dispatchable kernel entry.
kernel.subgroup.active.mask Return an integer mask of the currently active subgroup lanes.
kernel.subgroup.broadcast Broadcast a scalar or rank-1 vector value from one named subgroup lane.
kernel.subgroup.broadcast.first Broadcast a scalar or rank-1 vector value from the first active subgroup lane.
kernel.subgroup.count Read the number of subgroups in the current workgroup.
kernel.subgroup.id Read the current subgroup coordinate within the workgroup.
kernel.subgroup.lane.id Read the current invocation coordinate within its subgroup.
kernel.subgroup.match.all Return a lane mask and predicate describing whether all active subgroup lanes hold the same scalar value.
kernel.subgroup.match.any Return a lane mask of active subgroup invocations with the same scalar value.
kernel.subgroup.reduce Reduce a scalar or rank-1 vector value across the current subgroup.
kernel.subgroup.scan Prefix-scan a scalar or rank-1 vector value across the current subgroup.
kernel.subgroup.shuffle Move a scalar or rank-1 vector value across lanes of the current subgroup.
kernel.subgroup.size Read the invocation count of the current subgroup.
kernel.subgroup.vote.all Return true when all active subgroup lanes have a true predicate.
kernel.subgroup.vote.any Return true when any active subgroup lane has a true predicate.
kernel.subgroup.vote.ballot Return an integer mask of active subgroup lanes whose predicate is true.
kernel.tensor.lds.descriptor Bundle AMDGPU tensor-memory descriptor groups into one typed SSA value.
kernel.workgroup.count Read the dispatched workgroup count in one grid dimension.
kernel.workgroup.id Read one coordinate of the current workgroup within the dispatch grid.
kernel.workgroup.reduce Reduce a scalar or rank-1 vector value across the current workgroup.
kernel.workgroup.scan Prefix-scan a scalar or rank-1 vector value across the current workgroup.
kernel.workgroup.size Read the selected workgroup size dimension.
kernel.workgroup.vote.all Return true when all workgroup invocations have a true predicate.
kernel.workgroup.vote.any Return true when any workgroup invocation has a true predicate.
kernel.workgroup.vote.count Count workgroup invocations with a true predicate.
kernel.workitem.dispatch.id Read one coordinate of the current invocation in the whole dispatch.
kernel.workitem.id Read one coordinate of the current invocation within its workgroup.