Skip to main content

gemm_row

Function gemm_row 

Source
pub fn gemm_row(
    name: &str,
    m: usize,
    n: usize,
    k: usize,
    tile: Option<usize>,
    par: Option<usize>,
    t: &PlasticineTarget,
) -> Result<WorkloadRow, String>
Expand description

The GEMM row: the tile (or the PMU-fitting default), the unroll (or the widest that fits AND routes statically; par_capacity records the capacity bound), the placement, and the roofline — compute cycles at the pipeline II vs the DRAM channel bandwidth over the bytes the tiling moves (B column-panels once, A re-streamed per column panel, C once). A GEMM row with mesh replication only — the intra-tile loops run one pass each.