batchlas::ops::trsm Namespace Reference

Functions

◆ candidates()

template<class T>
auto batchlas::ops::trsm::candidates ( )
constexpr

Every compiled choice, once, in tie-break order (§6.3): native first, vendor last.

Definition at line 22 of file choice.hh.

Types

◆ TrsmChoice

fieldless: buckets, wg ladder, outer block derived

Definition at line 19 of file choice.hh.

Variables

◆ spec

select::OpSpec batchlas::ops::trsm::spec {Op::trsm, select::Lib::level3}
inlineconstexpr

last resort (§5.5): blocked, vendor (CPU)

Definition at line 24 of file choice.hh.

◆ key_names

std::array<std::string_view, 5> batchlas::ops::trsm::key_names
inlineconstexpr
Initial value:
{
"side:exact", "trans:exact", "order:log:2", "q:log", "batch:log"}

q: B.cols (Left) or B.rows (Right)

Definition at line 26 of file choice.hh.

◆ grid_order

std::array<int, 18> batchlas::ops::trsm::grid_order
inlineconstexpr
Initial value:
{1, 2, 4, 8, 12, 16, 24, 32, 48, 64, 96, 128, 192, 256, 384, 512,
768, 1024}

The tuner's grid; the transcriber (tuned/README.md) spells the same grid.

evidence: docs/design/flat-kernel-selection-phase3-plan.md (§3)

Definition at line 31 of file choice.hh.

◆ grid_q

std::array<int, 12> batchlas::ops::trsm::grid_q {1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 4096}
inlineconstexpr

Definition at line 33 of file choice.hh.

◆ grid_batch

std::array<int, 5> batchlas::ops::trsm::grid_batch {128, 512, 2048, 8192, 32768}
inlineconstexpr

Definition at line 34 of file choice.hh.

Classes

struct  Cta
 trsm_native_v1_dispatch, order <= 32 More...
struct  SgLeft
 trsm_native_sg_left_dispatch: Left, order <= 32, sg 32 More...
struct  Blocked
 trsm_native_blocked + the public gemm, any order More...
struct  Vendor
 backend::trsm_vendor; needs the level-3 library More...