moe_expert_gemv_gate_up_2x

Function moe_expert_gemv_gate_up_2x 

Source
pub fn moe_expert_gemv_gate_up_2x(
    gpu: &dyn GpuBackend,
    kernel: KernelHandle,
    input: DevicePtr,
    gate_packed_ptrs: DevicePtr,
    gate_scale_ptrs: DevicePtr,
    gate_scale2_vals: DevicePtr,
    gate_out: DevicePtr,
    up_packed_ptrs: DevicePtr,
    up_scale_ptrs: DevicePtr,
    up_scale2_vals: DevicePtr,
    up_out: DevicePtr,
    expert_indices: DevicePtr,
    n: u32,
    k: u32,
    top_k: u32,
    stream: u64,
) -> Result<()>
Expand description

Register-tiled fused gate+up expert GEMV: 2 output rows per thread.

Same as gate_up but each thread computes 2 adjacent output rows, reusing the input vector from registers. Doubles weight reads per iteration for better LPDDR5X bandwidth utilization.

Grid: (ceil(N/8), top_k, 2) Block: (128, 1, 1)