Skip to main content

Mojo struct

DecodeKVConsumer

struct DecodeKVConsumer[dtype: DType, config: MLA_SM100_Decode_Config, num_producer: Int = 1]

Fields

  • pipe (DecodeKVConsumer[dtype, config, num_producer].KVPipeType):
  • smem (UnsafePointer[Scalar[dtype], MutAnyOrigin, address_space=AddressSpace.SHARED]):

Implemented traits

AnyType, Copyable, ImplicitlyCopyable, ImplicitlyDestructible, Movable, RegisterPassable, TrivialRegisterPassable

comptime members

kv_stage_elems

comptime kv_stage_elems = (config * config)

KVPipeType

comptime KVPipeType = KVPipelineGeneric[config.num_kv_stages, 1, num_producer, 2]

Methods

__init__

__init__(pipe: KVPipelineGeneric[config.num_kv_stages, 1, num_producer, 2], smem: UnsafePointer[Scalar[dtype], MutAnyOrigin, address_space=AddressSpace.SHARED]) -> Self

stage_base_ptr

stage_base_ptr[*, qk_stage: Int = 0](self) -> UnsafePointer[Scalar[dtype], MutAnyOrigin, address_space=AddressSpace.SHARED]

Returns:

UnsafePointer

stage_index

stage_index[*, qk_stage: Int = 0](self) -> UInt32

Returns:

UInt32

wait

wait[*, qk_stage: Int = 0](self)

release

release[*, qk_stage: Int = 0](mut self, e: Int32)

Was this page helpful?