Skip to main content

Mojo function

mla_decode_sm100_sink_split_k

mla_decode_sm100_sink_split_k[q_type: DType, q_layout: Layout, k_t: MHAOperand, output_type: DType, mask_t: MHAMask, *, valid_layout: Layout, config: MHAConfig[config.dtype], depth: Int, num_heads: Int, SplitAccumType: OptionalPointer, group: Int, ragged: Bool, _is_cache_length_accurate: Bool, decoding_warp_split_k: Bool, split_page_size: Int = 128, per_token_scale_rope_aware: Bool = False](q: LayoutTensor[q_type, q_layout, q.origin, element_layout=q.element_layout, layout_int_type=q.layout_int_type, linear_idx_type=q.linear_idx_type, masked=q.masked, alignment=q.alignment], k: k_t, output: LayoutTensor[output.dtype, output.layout, output.origin, element_layout=output.element_layout, layout_int_type=output.layout_int_type, linear_idx_type=output.linear_idx_type, masked=output.masked, alignment=output.alignment], lse_accum_split_ptr: SplitAccumType, scale: Float32, batch_size: Int, block_z: Int, num_partitions: Int, q_max_seq_len: Int, valid_length: LayoutTensor[DType.uint32, valid_length.layout, valid_length.origin, element_layout=valid_length.element_layout, layout_int_type=valid_length.layout_int_type, linear_idx_type=valid_length.linear_idx_type, masked=valid_length.masked, alignment=valid_length.alignment], mask: mask_t, scales_ptr: UnsafePointer[Float32, MutAnyOrigin], scalar_args_buf: LayoutTensor[DType.int64, scalar_args_buf.layout, scalar_args_buf.origin, element_layout=scalar_args_buf.element_layout, layout_int_type=scalar_args_buf.layout_int_type, linear_idx_type=scalar_args_buf.linear_idx_type, masked=scalar_args_buf.masked, alignment=scalar_args_buf.alignment], ctx: DeviceContext, q_scale_ptr: UnsafePointer[Float32, MutAnyOrigin] = UnsafePointer())

Was this page helpful?