开发者
资源

接口列表

  • LLM-DataDist:大模型分布式集群和数据加速组件,提供了集群KV数据管理能力,以支持全量图和增量图分离部署。
    • LLM-DataDist相关接口存放在:"${INSTALL_DIR}/include/llm_datadist/llm_datadist.h"。${INSTALL_DIR}请替换为CANN软件安装后文件存储路径。以root用户安装为例,安装后文件默认存储路径为:/usr/local/Ascend/cann。
    • LLM-DataDist接口对应的库文件是:libllm_datadist.so。
  • HIXL:Huawei Xfer Library,面对集群场景提供高性能、零拷贝的点对点数据传输的能力,并通过简易API开放给用户。
    • HIXL相关接口存放在:"${INSTALL_DIR}/include/hixl/hixl.h"。${INSTALL_DIR}请替换为CANN软件安装后文件存储路径。以root用户安装为例,安装后文件默认存储路径为:/usr/local/Ascend/cann。
    • HIXL接口对应的库文件是:libcann_hixl.so。
    • HIXL_CS相关接口存放在:"${INSTALL_DIR}/include/cs/hixl_cs.h"。${INSTALL_DIR}请替换为CANN软件安装后文件存储路径。以root用户安装为例,安装后文件默认存储路径为:/usr/local/Ascend/cann。
    • HIXL_CS接口对应的库文件是:libcann_hixl.so。

支持的形态如下:

  • Atlas A2 训练系列产品/Atlas A2 推理系列产品针对Atlas A2 训练系列产品/Atlas A2 推理系列产品,仅支持Atlas 800I A2 推理服务器、A200I A2 Box 异构组件。该场景下Server内采用HCCS传输协议时,LLM-DataDist相关接口仅支持D2D。
  • Atlas A3 训练系列产品/Atlas A3 推理系列产品,该场景下采用HCCS传输协议时,LLM-DataDist相关接口不支持Host内存作为远端Cache。
  • Atlas 350 加速卡场景下,超节点内使用UB协议,超节点间使用RoCE协议。

接口列表如下。

LLM-DataDist

表1 LLM-DataDist接口_V2

接口名称

简介

LlmDataDist构造函数

构造LLM-DataDist。

~LlmDataDist()

LLM-DataDist对象析构函数。

Initialize

初始化LLM-DataDist。

Finalize

释放LLM-DataDist。

SetRole

设置当前LLM-DataDist的角色。

LinkLlmClusters

建链。

UnlinkLlmClusters

断链。

PullKvCache

以连续内存方式拉取KV Cache。

PullKvBlocks

以block列表的方式拉取KV Cache。

PushKvCache

推送Cache到远端节点。

PushKvBlocks

通过block列表的方式,推送Cache到远端节点。

RegisterKvCache

注册本地KV Cache内存。

UnregisterKvCache

解除注册本地KV Cache内存。

HIXL

表2 HIXL接口

接口名称

简介

HIXL构造函数

创建HIXL对象。

~Hixl()

HIXL对象析构函数。

Initialize

初始化HIXL,在调用其他接口前需要先调用该接口。

Finalize

HIXL资源清理函数。

RegisterMem

注册内存地址。用于TransferSync调用指定本地内存地址和远端内存地址,TransferSync指定的地址可以为注册的地址的子集,其中本地内存地址需在当前HIXL进行注册,远端内存地址需要在远端HIXL进行注册。

DeregisterMem

解注册内存。

Connect

与远端HIXL进行建链。

Disconnect

与远端HIXL进行断链。

TransferSync

与远端HIXL进行内存传输。

TransferAsync

批量异步传输,下发传输请求。

GetTransferStatus

获取请求状态。

SendNotify

Client向Server发送Notify信息。

GetNotifies

获取当前Hixl内所有Server收到的Notify信息,并清空已收到信息。

HIXL_CS

表3 HIXL_CS接口

接口名称

简介

HixlCSServerCreate

创建并初始化Server实例。

HixlCSServerRegMem

Server注册共享内存,该内存供Client访问。

HixlCSServerListen

启动Server侦听,接受来自Client的连接。

HixlCSServerUnregMem

注销已注册的内存。

HixlCSServerDestroy

销毁Server实例并释放相关资源。

HixlCSClientCreate

创建Client实例并初始化本端资源。

HixlCSClientConnect

发起与Server的同步建链(阻塞直到成功或超时)。

HixlCSClientGetRemoteMem

获取Server已注册的内存信息。

HixlCSClientRegMem

Client注册本地内存。

HixlCSClientUnregMem

注销Client注册的内存。

HixlCSClientBatchPutAsync

异步批量向Server写多组数据。

HixlCSClientBatchGetAsync

异步批量从Server读多组数据到本地。

HixlCSClientQueryCompleteStatus

查询异步批量任务的完成状态。

HixlCSClientDestroy

销毁Client实例并释放资源。

ADXL(待废弃)

表4 ADXL接口

接口名称

简介

AdxlEngine构造函数

创建AdxlEngine对象。

~AdxlEngine()

AdxlEngine对象析构函数。

Initialize

初始化AdxlEngine,在调用其他接口前需要先调用该接口。

Finalize

AdxlEngine资源清理函数。

RegisterMem

注册内存地址。用于TransferSync调用指定本地内存地址和远端内存地址,TransferSync指定的地址可以为注册的地址的子集,其中本地内存地址需在当前AdxlEngine进行注册,远端内存地址需要在远端AdxlEngine进行注册。

DeregisterMem

解注册内存。

Connect

与远端AdxlEngine进行建链。

Disconnect

与远端AdxlEngine进行断链。

TransferSync

与远端AdxlEngine进行内存传输。

SendNotify

Client向Server发送Notify信息。

GetNotifies

获取当前AdxlEngine内所有Server收到的Notify信息,并清空已收到信息。

MallocMem

申请内存。

FreeMem

注销内存。