moe_w4a16_fused_gate_up_k64_m128

Function moe_w4a16_fused_gate_up_k64_m128 

Source
pub fn moe_w4a16_fused_gate_up_k64_m128(
    gpu: &dyn GpuBackend,
    kernel: KernelHandle,
    a: DevicePtr,
    gate_packed_ptrs: DevicePtr,
    gate_scale_ptrs: DevicePtr,
    gate_scale2_vals: DevicePtr,
    up_packed_ptrs: DevicePtr,
    up_scale_ptrs: DevicePtr,
    up_scale2_vals: DevicePtr,
    c_gate: DevicePtr,
    c_up: DevicePtr,
    expert_offsets: DevicePtr,
    sorted_token_ids: DevicePtr,
    num_experts: u32,
    n_out: u32,
    k: u32,
    max_m_tiles_m128: u32,
    stream: u64,
) -> Result<()>
Expand description

K64 fused gate+up GEMM — M=128 variant (Block D #3 — Avarok pattern).

Doubles M_TILE from 64 → 128. Caller must compute max_m_tiles_m128 using divisor 128 (vs 64 for the M=64 variant). Grid covers the same total work but with half the blocks (and twice the work per block).

Grid: (ceil(2*n_out/128), max_m_tiles_m128, num_experts) Block: (256, 1, 1)