昇腾社区首页
中文
注册

Initialize

产品支持情况

产品

是否支持

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

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

Atlas A2 训练系列产品

x

Atlas 200I/500 A2 推理产品

x

Atlas 推理系列产品

x

Atlas 训练系列产品

x

函数功能

初始化LLM-DataDist。

函数原型

1
Status Initialize(const std::map<AscendString, AscendString> &options)

参数说明

参数名

输入/输出

描述

options

输入

初始化参数值。具体请参考表1

表1 options

参数名

可选/必选

描述

OPTION_LISTEN_IP_INFO

Pormpt必选

  • 配置了OPTION_LOCAL_COMM_RES时,该option表示host侧的IP地址和端口。
  • 未配置OPTION_LOCAL_COMM_RES时,该option表示device侧的IP地址和端口。

配置示例:如"192.168.1.1:26000",单进程多卡场景,传入多个时使用英文分号分割。

OPTION_DEVICE_ID

必选

设置当前进程的device ID,如"0",单进程多卡场景,传入多个时使用英文分号分割。

OPTION_SYNC_CACHE_WAIT_TIME

可选

kv相关操作的超时时间,单位:ms。不配置默认为1000ms。相关接口如下。

OPTION_BUF_POOL_CFG

可选

配置内存池大小与档位信息,提高内存申请性能和使用率。格式为json string,字段含义见表2,使用示例如下所示。

1
2
3
4
{
"buf_cfg":[{"total_size":2097152,"blk_size":256,"max_buf_size":8192}],
"buf_pool_size": 2147483648
}

OPTION_ENABLE_SET_ROLE

可选

配置是否支持角色平滑切换。取值如下。

  • 1:支持。
  • 0:不支持,不配置默认为不支持。

相关接口:SetRole

OPTION_LOCAL_COMM_RES

可选

配置本地通信资源信息,格式是json格式的字符串。仅需配置ranktable中当前llm datadist所使用device信息,无需配置ranktable中的server_count和rank_id字段,ranktable具体信息请参见HCCL集合通信库用户指南中的“通信功能开发 > 集群信息配置 > rank table文件配置资源信息“章节。配置示例如下。

{
    "server_list": [
        {
            "device": [
                {
                    "device_id": "0",
                    "device_ip": "x.x.x.x"
                }
            ],
            "server_id": "xxxx"
        }
    ],
    "status": "completed",
    "version": "1.0"
}

配置了当前option后,“OPTION_LISTEN_IP_INFO”中的IP地址和端口表示host侧的IP地址和端口。调用LinkLlmClustersUnlinkLlmClusters时,不需要配置“clusters”参数中的“local_ip_infos”信息。需要配置的“remote_ip_infos”信息表示host侧的IP地址和端口。该option不支持的接口列表如下:

表2 OPTION_BUF_POOL_CFG配置

配置项

可选/必选

描述

buf_cfg

可选

内存池档位配置,详见表3

buf_pool_size

可选

内存池大小,单位为byte。

表3 buf_cfg配置

配置项

可选/必选

描述

total_size

必选

当前档位内存池的大小,单位byte。

说明:

total_size是2M的倍数,且total_size是blk_size的倍数,最大值不应超过0xFFFFFFFF。

blk_size

必选

当前档位一次可以申请的最小内存值,单位byte。

说明:

要求满足2^n,且在(0,2M]之间,小于或等于max_buf_size。

max_buf_size

必选

当前档位一次可以申请的最大内存值,单位byte。

说明:

小于total_size,max_buf_size必须保持严格递增。

返回值

  • LLM_SUCCESS:成功
  • LLM_PARAM_INVALID:参数错误
  • 其他:失败

异常处理

约束说明

需要和Finalize配对使用,初始化成功后,任何退出前都需要调用Finalize保证资源释放,否则会出现资源释放顺序不符合预期而导致问题。