Line data Source code
1 : /**
2 : * Copyright (c) 2025 Huawei Technologies Co., Ltd.
3 : * This program is free software, you can redistribute it and/or modify it under the terms and conditions of
4 : * CANN Open Software License Agreement Version 2.0 (the "License").
5 : * Please refer to the License for details. You may not use this file except in compliance with the License.
6 : * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED,
7 : * INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
8 : * See LICENSE in the root of the software repository for the full text of the License.
9 : */
10 :
11 : #include "topoinfo_ranktableStandard.h"
12 :
13 : #include <map>
14 : #include <vector>
15 : #include <string>
16 : #include <fstream>
17 : #include <algorithm>
18 : #include <unistd.h>
19 : #include <chrono>
20 : #include <iostream>
21 : #include <arpa/inet.h>
22 :
23 : // ltm指定config路径
24 : #include "common/src/config.h"
25 : #include "hccl_comm_pub.h"
26 : #include "workflow_pub.h"
27 :
28 : using namespace std;
29 : using namespace hccl;
30 :
31 0 : TopoinfoRanktableStandard::TopoinfoRanktableStandard(const std::string& rankTableM, const std::string& identify)
32 0 : : TopoInfoRanktableParser(rankTableM, identify)
33 0 : {}
34 :
35 0 : TopoinfoRanktableStandard::~TopoinfoRanktableStandard() {}
36 :
37 0 : HcclResult TopoinfoRanktableStandard::Init() { return HCCL_E_NOT_SUPPORT; }
38 :
39 0 : HcclResult TopoinfoRanktableStandard::GetSelfClusterInfo([[maybe_unused]] HcclCommParams& params)
40 : {
41 0 : return HCCL_E_NOT_SUPPORT;
42 : }
43 :
44 0 : HcclResult TopoinfoRanktableStandard::GetClusterInfo(
45 : [[maybe_unused]] hccl::HcclCommParams& params, [[maybe_unused]] hccl::RankTable_t& rankTable)
46 : {
47 0 : return HCCL_E_NOT_SUPPORT;
48 : }
49 0 : HcclResult TopoinfoRanktableStandard::GetClusterInfo([[maybe_unused]] RankTable_t& clusterInfo)
50 : {
51 0 : return HCCL_E_NOT_SUPPORT;
52 : }
53 :
54 0 : HcclResult TopoinfoRanktableStandard::ParserClusterInfo(
55 : [[maybe_unused]] hccl::HcclCommParams& params, [[maybe_unused]] hccl::RankTable_t& rankTable)
56 : {
57 0 : return HCCL_E_NOT_SUPPORT;
58 : }
59 :
60 0 : HcclResult TopoinfoRanktableStandard::GetHcomInfo(
61 : [[maybe_unused]] hccl::HcclCommParams& params, [[maybe_unused]] hccl::RankTable_t& rankTable)
62 : {
63 0 : return HCCL_E_NOT_SUPPORT;
64 : }
65 :
66 0 : HcclResult TopoinfoRanktableStandard::GetServerList(
67 : [[maybe_unused]] const nlohmann::json& obj, [[maybe_unused]] u32 objIndex,
68 : [[maybe_unused]] hccl::RankTable_t& rankTable, [[maybe_unused]] u32 serverNum)
69 : {
70 0 : return HCCL_E_NOT_SUPPORT;
71 : }
72 :
73 0 : HcclResult TopoinfoRanktableStandard::GetSingleServer(
74 : [[maybe_unused]] const nlohmann::json& serverListObj, [[maybe_unused]] u32 objIndex,
75 : [[maybe_unused]] hccl::RankTable_t& rankTable)
76 : {
77 0 : return HCCL_E_NOT_SUPPORT;
78 : }
79 :
80 0 : HcclResult TopoinfoRanktableStandard::GetCloudHcomInfo(
81 : [[maybe_unused]] hccl::HcclCommParams& params, [[maybe_unused]] hccl::RankTable_t& rankTable,
82 : [[maybe_unused]] const std::string& identify, [[maybe_unused]] u32& rank)
83 : {
84 0 : return HCCL_E_NOT_SUPPORT;
85 : }
86 :
87 0 : HcclResult TopoinfoRanktableStandard::GetSortClouldRankList([[maybe_unused]] hccl::RankTable_t& rankTable)
88 : {
89 0 : return HCCL_E_NOT_SUPPORT;
90 : }
91 :
92 0 : HcclResult TopoinfoRanktableStandard::GetSingleGroupDeviceCount(
93 : [[maybe_unused]] const nlohmann::json& obj, [[maybe_unused]] u32 objIndex,
94 : [[maybe_unused]] hccl::RankTable_t& rankTable, [[maybe_unused]] u32& deviceNum)
95 : {
96 0 : return HCCL_E_NOT_SUPPORT;
97 : }
98 :
99 0 : HcclResult TopoinfoRanktableStandard::GetLabSingleGroup(
100 : [[maybe_unused]] const nlohmann::json& obj, [[maybe_unused]] u32 objIndex,
101 : [[maybe_unused]] const hccl::HcclCommParams& params, [[maybe_unused]] hccl::RankTable_t& rankTable,
102 : [[maybe_unused]] u32 instanceNum)
103 : {
104 0 : return HCCL_E_NOT_SUPPORT;
105 : }
106 :
107 0 : HcclResult TopoinfoRanktableStandard::GetGroupList(
108 : [[maybe_unused]] hccl::HcclCommParams& params, [[maybe_unused]] hccl::RankTable_t& rankTable)
109 : {
110 0 : return HCCL_E_NOT_SUPPORT;
111 : }
112 :
113 0 : HcclResult TopoinfoRanktableStandard::GetInstanceList(
114 : [[maybe_unused]] nlohmann::json& instanceList, [[maybe_unused]] hccl::HcclCommParams& params,
115 : [[maybe_unused]] hccl::RankTable_t& rankTable, [[maybe_unused]] u32 instanceNum, [[maybe_unused]] u32 deviceNum)
116 : {
117 0 : return HCCL_E_NOT_SUPPORT;
118 : }
119 :
120 0 : HcclResult TopoinfoRanktableStandard::GetCloudDevList(
121 : [[maybe_unused]] nlohmann::json& instanceList, [[maybe_unused]] u32 podIndex,
122 : [[maybe_unused]] nlohmann::json& deviceList, [[maybe_unused]] std::string& serverId,
123 : [[maybe_unused]] u32& serverIdx)
124 : {
125 0 : return HCCL_E_NOT_SUPPORT;
126 : }
127 :
128 0 : HcclResult TopoinfoRanktableStandard::GetDevList(
129 : [[maybe_unused]] const nlohmann::json& instanceList, [[maybe_unused]] u32 podIndex,
130 : [[maybe_unused]] const nlohmann::json& deviceList, [[maybe_unused]] const hccl::HcclCommParams& params,
131 : [[maybe_unused]] hccl::RankTable_t& rankTable, [[maybe_unused]] std::string& serverId,
132 : [[maybe_unused]] u32& serverIdx)
133 : {
134 0 : return HCCL_E_NOT_SUPPORT;
135 : }
136 :
137 0 : HcclResult TopoinfoRanktableStandard::GetDeployMode([[maybe_unused]] bool& cloudFlag) const
138 : {
139 0 : return HCCL_E_NOT_SUPPORT;
140 : }
|