prefill_attention_paged_dflash_bf16_indirect

Function prefill_attention_paged_dflash_bf16_indirect 

Source
pub fn prefill_attention_paged_dflash_bf16_indirect(
    gpu: &dyn GpuBackend,
    kernel: KernelHandle,
    q: DevicePtr,
    k_cache: DevicePtr,
    v_cache: DevicePtr,
    output: DevicePtr,
    block_table: DevicePtr,
    q_len: u32,
    kv_len_q_offset_dev: DevicePtr,
    num_q_heads: u32,
    num_kv_heads: u32,
    head_dim: u32,
    cache_block_size: u32,
    sliding_window: u32,
    inv_sqrt_d: f32,
    stream: u64,
) -> Result<()>
Expand description

2026-09-25: prefill_attention_paged_dflash with kv_len, q_offset and q_rope_pos read on the device from kv_len_q_offset_dev (three u32 at byte offsets 0, 4 and 8) instead of passed as scalars, so a captured CUDA graph can replay the launch with values the host writes before each replay. q_offset addresses the cache; q_rope_pos is the absolute query position the causal and sliding-window masks compare against. The kernel applies no RoPE. Kernel: attn_prefill_paged_indirect.