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接口