LinkLlmClusters
产品支持情况
产品 |
是否支持 |
---|---|
√ |
|
√ |
|
x |
|
x |
|
x |
|
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。 |
返回值
- 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
父主题: LLM-DataDist接口