昇腾社区首页
中文
注册

hccl.json文件说明

Ascend Operator将在训练启动时,为训练任务生成集合通信所需的RankTable文件。集合通信根据RankTable File文件中的设备ID以及IP构建集合通信域,完成集合通信的信息交换。

  • 使用Ascend Operator ConfigMap挂载ranktable时,需要在创建任务时,同时在训练yaml中创建名称为rings-config-<任务名>ConfigMap,并将该ConfigMap挂载进训练容器的“/user/serverid/devindex/config”路径下。Ascend Operator将根据Ascend Device Plugin在任务Pod中写的Annotation信息,构建出任务的集合通信文件RankTable File,并将其内容写入ConfigMap中,在训练容器中映射为“/user/serverid/devindex/config/hccl.json”文件。
  • 使用共享存储的方式挂载ranktable时,需要在创建任务时,同时在训练yaml中挂载共享存储或者本地存储的目录,并将该目录挂载进训练容器的“/user/serverid/devindex/config”路径下。Ascend Operator将根据Ascend Device Plugin或volcano-scheduler在任务Pod中写的Annotation信息,构建出任务的集合通信文件RankTable File,并将其内容写入“/共享存储或者本地存储目录/hccl.json”文件中,在训练容器中映射为“/user/serverid/devindex/config/hccl.json”文件。

Atlas 训练系列产品Atlas A2 训练系列产品、推理服务器(插Atlas 300I Duo 推理卡)、Atlas 800I A2 推理服务器、A200I A2 Box 异构组件

hccl.json文件示例如下:

hccl.json:
----
{
    "status": "completed",  // Ascend Operator是否写入完成
    "server_list": [{    // 节点列表
        "device": [{   // NPU列表
            "device_id": "1",  // NPU的设备ID
            "device_ip": "192.168.101.xx",   // NPU的设备IP
            "rank_id": "0" // NPU对应的训练rank id
        }, {
            "device_id": "2",
            "device_ip": "192.168.102.xx",
            "rank_id": "1"
        }, {
            "device_id": "3",
            "device_ip": "192.168.103.xx",
            "rank_id": "2"
        }, {
...
        }],
        "server_id": "192.168.101.xx",   // 节点IP
        "container_ip": "192.168.149.xx",   // Pod IP
	"hardware_type":"800I-A2-32G"       // 产品型号
    }]
    "server_count": "1",   // 任务总服务器数量
    "version": "1.0"
}

Atlas A3 训练系列产品

hccl.json文件示例如下:
{
    "version": "1.2",
    "server_count": "1",
    "server_list": [    // 节点列表
        {
            "server_id": "xx.xx.xx.xx",  //节点的IP
            "device": [
                {
                    "device_id": "0",     // NPU的设备ID
                    "device_ip": "xx.xx.xx.xx",  // NPU的设备IP
                    "rank_id": "0",              // NPU对应的训练rank id
                    "super_device_id": "37748736"   //NPU的设备ID
                },
...
                {
                    "device_id": "7",
                    "device_ip": "xx.xx.xx.xx",
                    "rank_id": "7",
                    "super_device_id": "38600711"
                }
            ],
        }
    ],
    "super_pod_list": [   //超节点列表
        {
            "super_pod_id": "0",  //逻辑超节点ID
            "server_list": [
                {
                    "server_id": "xx.xx.xx.xx"   //节点的IP
                }
            ]
        }
    ],
    "status": "completed"   // 状态
}