w8a16_gemm_m16

Function w8a16_gemm_m16 

Source
pub fn w8a16_gemm_m16(
    gpu: &dyn GpuBackend,
    kernel: KernelHandle,
    input: DevicePtr,
    weight: DevicePtr,
    block_scale: DevicePtr,
    output: DevicePtr,
    m: u32,
    n: u32,
    k: u32,
    stream: u64,
) -> Result<()>
Expand description

Contiguous input [m, k] BF16 and output [m, n] BF16; weight / block_scale are the raw w8a16_gemv pointers ([N, K] FP8 E4M3 and [N/128, K/128] FP32).

REFUSES m > 16: the kernel’s M tile IS the MMA’s 16 rows, and rows past it are simply not computed (stale output, not a launch failure). Callers with 17..=32 rows run it twice on contiguous row halves, the way dense_ffn_m16_tc.rs does.