|
constexpr |
The work-group small launches: the batched kernel's 128 lanes, or the float NN tiled leg's (NB/4)^2 with NB = 48 or 56 (small_batched.hh).
|
constexpr |
| bool batchlas::ops::gemm::small_fits | ( | const select::Device & | d, |
| bool | nn, | ||
| std::int64_t | max_dim ) |
|
constexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
Table keys: ta, tb (N|T|C; C folds to T for a real scalar) and layout (packed = A, B, C contiguous with 16-byte bases) exact; m, n, k, batch log, each weight 1 (work ~ m n k batch).
|
inlineconstexpr |
The tuner's demand-driven grid; the transcriber (tuned/README.md) spells it again.
Squares for every form and both layouts; panels and skinny shapes for the issued forms only, packed panels from m, n >= 128. evidence: docs/design/flat-kernel-selection-phase3-plan.md (§3)
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
Classes | |
| struct | Direct |
| gemm_direct: one work-item per element, any form; max_wg >= 64 More... | |
| struct | Tiled |
| gemm_tiled: 16x16 shared-memory tile, any form; max_wg >= 256 More... | |
| struct | Small |
| gemm_small: several matrices per work-group; real, see small_fits More... | |
| struct | Reg |
| gemm_reg, float only: m x n x k macro tile with k unroll u; must name a reg_configs entry that instantiates the call's transpose form, and max_wg must cover its threads(). More... | |
| struct | Wide |
| gemm_wide, every scalar: 16-byte-granule m x n x k tiles; must name a wide_configs entry that instantiates the call's form, and max_wg must cover its threads(). More... | |
| struct | Vendor |
| backend::gemm_vendor; needs the level-3 library More... | |
| struct | Forms |
| Transpose forms an instantiation exists for, after the real-scalar C->T fold. More... | |
| struct | RegCfg |
| One compiled register config: tr/tc thread tile, stages, the forms instantiated, and whether NN takes the unpredicated leg when the layout allows (derived per call, never a gate). More... | |
| struct | WideCfg |
| One compiled wide config. More... | |