---
title: 接口列表
description: "- LLM-DataDist：大模型分布式集群和数据加速组件，提供了集群KV数据管理能力，以支持全量图和增量图分离部署。"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/hixlug/llmcrv2_42_02.html
sourcePath: /source/zh/canncommercial/900/API/hixlug/llmcrv2_42_02.html
indexId: 484e36bed95240167d4f5e1d66de7028d9e2cd6933f36a08b07883a42d7ae78959
---
# 接口列表

- 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。

支持的形态如下：

- 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。

接口列表如下。

#### LLM-DataDist


**表1 LLM-DataDist接口**

| 接口名称 | 简介 |
| --- | --- |
| 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信息，并清空已收到信息。 |


#### ADXL（待废弃）


**表3 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 | 注销内存。 |
