For the complete documentation index, see llms.txt. Markdown versions of all pages are available by appending .md to any URL (e.g. /get-started.md).
Mojo module
id
This module provides GPU thread and block indexing functionality.
It defines aliases and functions for accessing GPU grid, block, and thread indices and dimensions.
comptime values
block_dim
comptime block_dim = _BlockDim()
Contains the dimensions of the block as x, y, and z values.
For example: block_dim.y.
block_id_in_cluster
comptime block_id_in_cluster = _ClusterBlockIdx()
Contains the block id of the threadblock within a cluster, as x, y, and z values.
block_idx
comptime block_idx = _BlockIdx()
Contains the block index in the grid, as x, y, and z values.
cluster_dim
comptime cluster_dim = _ClusterDim()
Contains the dimensions of the cluster, as x, y, and z values.
cluster_idx
comptime cluster_idx = _ClusterIdx()
Contains the cluster index in the grid, as x, y, and z values.
global_idx
comptime global_idx = _GlobalIdx()
Contains the global offset of the kernel launch, as x, y, and z values.
grid_dim
comptime grid_dim = _GridDim()
Provides accessors for getting the x, y, and z dimensions of a grid.
thread_idx
comptime thread_idx = _ThreadIdx()
Contains the thread index in the block, as x, y, and z values.
Functions
-
lane_id: Returns the lane ID of the current thread within its warp. -
sm_id: Returns the Streaming Multiprocessor (SM) ID of the current thread. -
warp_id: Returns the warp ID of the current thread within its block. The warp ID is a unique identifier for each warp within a block, ranging from 0 to BLOCK_SIZE/WARP_SIZE-1. This ID is commonly used for warp-level programming and synchronization within a block.