mstar.engine.resources.kv.transfer#
KV transfer: moving one request’s pages between engines.
mstar.communication.tensors is imported lazily, inside the two places
that genuinely need it at runtime (the transfer-engine isinstance
dispatch and the Mooncake read). It pulls in the conductor and the
sampling kernels behind it, and this module is otherwise free of both —
keeping the import deferred is what lets the KV layer be built and tested
without a GPU toolchain present.
Classes
|
|
|
|
|
|
|
|
KV cache that remains local to its worker. |
|
|
|
|
|
|
- class mstar.engine.resources.kv.transfer.CudaIpcKVTransferEngine(kv_cache, max_workers=3)[source]#
Bases:
KVTransferEngine- Parameters:
kv_cache (KVCache)
- read_batched_async(remote_kv_info, read_info)[source]#
- Parameters:
remote_kv_info (CudaIpcKVTransferInfo)
read_info (list[KVReadInfo])
- class mstar.engine.resources.kv.transfer.CudaIpcKVTransferInfo(cuda_share: 'tuple', size: 'tuple', stride: 'tuple', offset: 'int', dtype: 'str', requires_grad: 'bool', layout: 'KVLayout')[source]#
Bases:
object- Parameters:
- class mstar.engine.resources.kv.transfer.KVReadInfo(layer_idx: 'int', local_page_idx: 'int', remote_page_idx: 'int', token_start: 'int', token_end: 'int')[source]#
Bases:
object- Parameters:
- class mstar.engine.resources.kv.transfer.KVTransferEngine[source]#
Bases:
ABC- abstractmethod read_batched_async(remote_kv_info, read_info)[source]#
- Parameters:
read_info (list[KVReadInfo])
- Return type:
Future | None
- class mstar.engine.resources.kv.transfer.KVTransferManager(transfer_engine_info, kv_cache)[source]#
Bases:
object- Parameters:
transfer_engine_info (TransferEngineInfo)
kv_cache (KVCache)
- get_kv_transfer_info()[source]#
Descriptor another process needs to read this cache remotely.
KVCachePool.publishstamps it onto everySequenceInfo.
- class mstar.engine.resources.kv.transfer.LocalOnlyKVTransferEngine[source]#
Bases:
KVTransferEngineKV cache that remains local to its worker.
- read_batched_async(remote_kv_info, read_info)[source]#
- Parameters:
read_info (list[KVReadInfo])
- Return type:
Future | None
- class mstar.engine.resources.kv.transfer.MooncakeKVTransferEngine(kv_cache, entity_id, transfer_engine)[source]#
Bases:
KVTransferEngine- Parameters:
kv_cache (KVCache)
entity_id (str)
transfer_engine (MooncakeTransferEngine)
- read_batched_async(remote_kv_info, read_info)[source]#
- Parameters:
remote_kv_info (MooncakeKVTransferInfo)
read_info (list[KVReadInfo])
- Return type:
Future | None
- class mstar.engine.resources.kv.transfer.MooncakeKVTransferInfo(entity_id: 'str', session_id: 'str', data_ptr: 'int', layout: 'KVLayout')[source]#
Bases:
object
- class mstar.engine.resources.kv.transfer.TransferEngineInfo(my_entity_id: 'str', my_session_id: 'str', transfer_engine: 'TensorTransferEngine')[source]#
Bases:
object- Parameters:
my_entity_id (str)
my_session_id (str)
transfer_engine (TensorTransferEngine)
- transfer_engine: TensorTransferEngine#