CANN/ge LLM数据分发copy_cache函数

📅 2026/7/4 16:54:10 👁️ 阅读次数 📝 编程学习
CANN/ge LLM数据分发copy_cache函数

copy_cache

【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge

产品支持情况

产品是否支持
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 推理系列产品
Atlas A2 训练系列产品x

函数功能

拷贝KV Cache。

函数原型

copy_cache(dst: KvCache, src: KvCache, dst_batch_index: int = 0, src_batch_index: int = 0, offset: int = 0, size: int = -1, req_id: Optional[int] = None)

参数说明

参数名称数据类型取值说明
dstKvCache目标Cache。
srcKvCache源Cache。
dst_batch_indexint目标Cache的batch_index,默认为0。
src_batch_indexint源Cache的batch_index,默认为0。
offsetint每个tensor的偏移,默认为0。
sizeint设置为>0的整数,表示要拷贝的大小。
或设置为-1,表示完整拷贝。
默认为-1。
req_idOptional[int]本次调用关联的req_id,如果设置了该参数则本地调用相关的维测日志中会打印该req_id
默认为None

调用示例

kv_cache_manager.copy_cache(dst_cache, src_cache, 0, 1, 0, 128)

返回值

正常情况下无返回值。

参数错误可能抛出TypeError或ValueError。

执行时间超过sync_kv_timeout配置会抛出LLMException异常。

约束说明

  • src/dst的CacheDesc需要匹配。
  • 本接口不支持并发,并发会排队等待。

【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考