昇腾社区首页
中文
注册

样例准备

HcclCreateSubCommConfig接口可以基于全局通信域创建子通信域,全局通信域可以基于ranktable文件或者root info协商方式创建,该样例以基于ranktable文件创建的全局通信域为例,给出如何创建子通信域的样例代码。

安装配置MPI

HcclCreateSubCommConfig通信域创建方式依赖MPI分别在每个Device上拉起进程,所以编写HCCL的代码样例前,需要先安装配置MPI软件包。

MPI软件包的安装配置可参见HCCL性能测试工具中的MPI安装与配置

准备ranktable文件

该样例通过获取ranktable的方式进行初始化,所以需准备一份ranktable文件配置集群信息,供后续调用接口时使用。

配置“RANK_TABLE_FILE”环境变量,指定ranktable文件所在路径,如下所示,文件名称为“ranktable.json”。

1
export RANK_TABLE_FILE=/home/test/ranktable.json
Atlas A2 训练系列产品 ,组网为单机8卡为例,ranktable.json配置示例如下,不同产品形态ranktable文件的配置示例及详细参数说明可参见ranktable文件配置资源信息

以下json文件仅为配置示例,使用时请根据实际组网信息进行配置,并删除注释。

{
    "status":"completed",   // ranktable可用标识,completed为可用
    "version": "1.0",
    "server_count": "1",   // 参与训练的AI Server数目
    "server_list": [
        {
            "server_id": "SERVER_ID_SV1",   // AI Server标识,String类型,请确保全局唯一
            "device": [                     // AI Server中的Device列表
                {
                    "device_id": "0",
                    "device_ip": "192.168.1.8",
                    "rank_id": "0"
                },
                {
                    "device_id": "1",
                    "device_ip": "192.168.1.9",
                    "rank_id": "1"
                },
                {
                    "device_id": "2",
                    "device_ip": "192.168.1.10",
                    "rank_id": "2"
                },
                {
                    "device_id": "3",
                    "device_ip": "192.168.1.11",
                    "rank_id": "3"
                },
                {
                    "device_id": "4",
                    "device_ip": "192.168.1.12",
                    "rank_id": "4"
                },
                {
                    "device_id": "5",
                    "device_ip": "192.168.1.13",
                    "rank_id": "5"
                },
                {
                    "device_id": "6",
                    "device_ip": "192.168.1.14",
                    "rank_id": "6"
                },
                {
                    "device_id": "7",
                    "device_ip": "192.168.1.15",
                    "rank_id": "7"
                }
            ]
        }
    ]
}