IMPORTANT: To view this page as Markdown, append `.md` to the URL (e.g. /get-started.md). For the complete documentation index, see llms.txt.
Skip to main content
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 struct

ReduceTier

struct ReduceTier

GPU tier discriminator for the row-wise scaffolder. Mutually exclusive by construction (a single field, not independent bools): Block is the default (also every CPU tier, where only emit_tile_width/simd_width matter). Scaffolder-internal — a body never reads Context._tier.

Fields

  • value (Int):

Implemented traits

AnyType, Copyable, Deinitable, ImplicitlyCopyable, Movable, RegisterPassable, TrivialRegisterPassable

comptime members

Block

comptime Block = ReduceTier(Int(0))

Block-per-row (or block-per-output) cooperative tier — the default. Also the tag used for every CPU tier.

Serial

comptime Serial = ReduceTier(Int(2))

One thread per row: it walks the whole reduce axis and owns the output, with no cross-thread join. Used by the non-inner tiled tier's scalar fallback (GPU only).

Splitk

comptime Splitk = ReduceTier(Int(3))

Multiple blocks cooperate on one row when num_rows < sm_count would otherwise leave SMs idle (GPU only).

Warp

comptime Warp = ReduceTier(Int(1))

Warp-per-row: one warp covers the whole row (GPU only).

Methods

__init__

def __init__(value: Int) -> Self

__eq__

def __eq__(self, other: Self) -> Bool

Returns:

Bool

__ne__

def __ne__(self, other: Self) -> Bool

Returns:

Bool