昇腾社区首页
中文
注册
开发者
下载

LinkLlmClusters

产品支持情况

产品

是否支持

Atlas A3 训练系列产品/Atlas A3 推理系列产品

Atlas 800I A2 推理产品/A200I A2 Box 异构组件

Atlas A2 训练系列产品

x

Atlas 200I/500 A2 推理产品

x

Atlas 推理系列产品

x

Atlas 训练系列产品

x

函数功能

在LlmDataDist之间执行建链,Client端调用。

函数原型

1
Status LinkLlmClusters(const std::vector<ClusterInfo> &clusters, std::vector<Status> &rets, int32_t timeout_in_millis = 1000)

参数说明

参数名

输入/输出

描述

clusters

输入

需要建链的集群信息。类型为ClusterInfo。需要配置ClusterInfo中的remote_cluster_id和remote_ip_infos信息,若Initialize未指定OPTION_LOCAL_COMM_RES, 需额外配置local_ip_infos,每个ClusterInfo的local_ip_infos和remote_ip_infos仅支持配置一个ip_info。

rets

输出

每个cluster建链结果。

timeout_in_millis

输入

建链超时时间,单位ms。默认1000ms。

调用示例

请参考decoder_sample2

返回值

  • LLM_SUCCESS:只有所有clusters建链成功,接口才会返回成功。
  • 其他:建链失败,需要查看rets每个cluster的建链结果。

异常处理

  • LLM_ALREADY_LINK:当前的cluster已经和远端cluster建立了链接。
  • LLM_LINK_FAILED:建链失败。

约束说明

  • 调用该接口前,需要先在Client和Server调用Initialize接口完成初始化。
  • 允许创建的最大通信数量=512,建链数量过多存在内存OOM及KV Cache传输的性能风险。
  • 建议超时时间配置200ms以上。
  • 调用该接口前Client和Server需提前注册所有内存,否则建链后注册不支持远端访问。
  • 容器场景若未配置OPTION_LOCAL_COMM_RES或配置为空,需在容器内映射/etc/hccn.conf文件。
  • 如果并发建链,建链使用的某个卡是down的状态,可能导致某些链路建链超时。如果需要非down状态的卡建链成功,则需要对所有涉及建链的卡配置如下命令。
    hccn_tool -i ${device_id} -tls -s enable 1