tilelang.layout.swizzle¶
Wrapping Layouts.
Functions¶
|
|
|
|
|
|
|
|
|
Create a row-major linear layout for any dimension. |
Create a standard 8x8 GEMM fragment layout for ldmatrix/stmatrix. |
|
Create a transposed 8x8 GEMM fragment layout for ldmatrix/stmatrix. |
Module Contents¶
- tilelang.layout.swizzle.make_swizzled_layout(buffer, k_major=True, allow_pad=True)¶
- tilelang.layout.swizzle.make_volta_swizzled_layout(buffer, is_a=True, k_inner=True)¶
- tilelang.layout.swizzle.make_wgmma_swizzled_layout(buffer, continuity=None, k_major=True)¶
- Parameters:
buffer (tvm.tir.Buffer | tvm.tir.BufferLoad | tvm.tir.BufferRegion)
continuity (int)
k_major (bool)
- tilelang.layout.swizzle.make_tcgen05mma_swizzled_layout(buffer, continuity=None, k_major=True)¶
- Parameters:
buffer (tvm.tir.Buffer | tvm.tir.BufferLoad | tvm.tir.BufferRegion)
continuity (int)
k_major (bool)
- tilelang.layout.swizzle.make_full_bank_swizzled_layout(*args)¶
- Parameters:
args – buffer/BufferLoad/BufferRegion or (stride, continuous, element_size)
Examples
make_full_bank_swizzled_layout(buffer) make_full_bank_swizzled_layout(stride, continuous, element_size)
- tilelang.layout.swizzle.make_half_bank_swizzled_layout(*args)¶
- Parameters:
args – buffer/BufferLoad/BufferRegion or (stride, continuous, element_size)
Examples
make_half_bank_swizzled_layout(buffer) make_half_bank_swizzled_layout(stride, continuous, element_size)
- tilelang.layout.swizzle.make_quarter_bank_swizzled_layout(*args)¶
- Parameters:
args – buffer/BufferLoad/BufferRegion or (stride, continuous, element_size)
Examples
make_quarter_bank_swizzled_layout(buffer) make_quarter_bank_swizzled_layout(stride, continuous, element_size)
- tilelang.layout.swizzle.make_linear_layout(buffer_or_load_or_region)¶
Create a row-major linear layout for any dimension.
- Parameters:
buffer_or_load_or_region (tvm.tir.Buffer | tvm.tir.BufferLoad | tvm.tir.BufferRegion) – Buffer, BufferLoad, or BufferRegion
- Returns:
A row-major linear layout
- Return type:
- tilelang.layout.swizzle.make_gemm_fragment_8x8()¶
Create a standard 8x8 GEMM fragment layout for ldmatrix/stmatrix.
This layout matches the warp-level matrix multiplication pattern used in tensor cores.
- Returns:
An 8x8 fragment layout
- Return type:
- tilelang.layout.swizzle.make_gemm_fragment_8x8_transposed()¶
Create a transposed 8x8 GEMM fragment layout for ldmatrix/stmatrix.
This layout is the transposed version of make_gemm_fragment_8x8, useful for different access patterns in matrix operations.
- Returns:
A transposed 8x8 fragment layout
- Return type: