dense_mm_bf16

Function dense_mm_bf16 

Source
pub fn dense_mm_bf16(
    gpu: &dyn GpuBackend,
    k: &DenseMmKernels,
    a: DevicePtr,
    b: DevicePtr,
    c: DevicePtr,
    m: usize,
    n: usize,
    kk: usize,
    stream: u64,
) -> Result<()>
Expand description

2026-09-25: C[M, N] = A[M, K] @ B[N, K]^T, BF16 in and out, output row stride N, dispatched on M: dense_gemv_bf16 at M == 1, dense_gemv_bf16_batchm at 2..=DENSE_GEMV_BATCHM_MAX_M, and the tile GEMM otherwise or when the chosen GEMV kernel is missing.

batchm reads the weight once for all M rows. Each of its rows follows dense_gemv_bf16’s K order and reduction (gb10 kernels), so the two GEMV arms give the same bits per row; the tile GEMM accumulates in a different order.