warp.tile_randi#
- warp.tile_randi( ) Tile[Any, tuple[int, ...]]#
Kernel
Generate a tile of random integers.
- param shape:
Shape of the output tile
- param rng:
Random number generator state, typically from
warp.rand_init- param storage:
The storage location for the tile:
"register"for registers (default) or"shared"for shared memory.- returns:
A tile of random integers with the specified shape
Example:
TILE_M, TILE_N = 2, 2 M, N = 2, 2 seed = 42 @wp.kernel def rand_kernel(seed: int, x: wp.array2d(dtype=int)): i, j = wp.tid() rng = wp.rand_init(seed, i * TILE_M + j) t = wp.tile_randi(shape=(TILE_M, TILE_N), rng=rng) wp.tile_store(x, t, offset=(i * TILE_M, j * TILE_N)) x = wp.zeros(shape=(M * TILE_M, N * TILE_N), dtype=int) wp.launch_tiled(rand_kernel, dim=[M, N], inputs=[seed, x], block_dim=32) print(x.numpy())
[[ 798497746 1803297529 -955788638 17806966] [ 1788185933 1320194893 2073257406 -2009156320] [ -257534450 -1138585923 1145322783 -321794125] [-2096177388 -1835610841 1159339128 -652221052]]
- warp.tile_randi( ) Tile[Any, tuple[int, ...]]
Kernel
Generate a tile of random integers within a specified range.
- param shape:
Shape of the output tile
- param rng:
Random number generator state, typically from
warp.rand_init- param min:
Minimum value (inclusive) for random integers
- param max:
Maximum value (exclusive) for random integers
- param storage:
The storage location for the tile:
"register"for registers (default) or"shared"for shared memory.- returns:
A tile of random integers in the range [min, max) with the specified shape
Example:
TILE_M, TILE_N = 2, 2 M, N = 2, 2 seed = 42 @wp.kernel def rand_range_kernel(seed: int, x: wp.array2d(dtype=int)): i, j = wp.tid() rng = wp.rand_init(seed, i * TILE_M + j) t = wp.tile_randi(shape=(TILE_M, TILE_N), rng=rng, min=-5, max=5) wp.tile_store(x, t, offset=(i * TILE_M, j * TILE_N)) x = wp.zeros(shape=(M * TILE_M, N * TILE_N), dtype=int) wp.launch_tiled(rand_range_kernel, dim=[M, N], inputs=[seed, x], block_dim=32) print(x.numpy())
[[ 1 4 3 1] [-2 -2 1 1] [ 1 -2 -2 -4] [ 3 0 3 -1]]