合并受阻
变更摘要
该 PR 将旧的 TopoMatch1D/TopoMatchMultilevel 拓扑匹配切换为新的 V2 分层匹配体系:新增 TopoMatchBaseV2 基类及 TopoMatchOneLevel、TopoMatchTwoLevel、TopoMatchThreeLevel、TopoMatchConcurrentV2 实现,MatchTopo 接口增加 AlgorithmProfile 参数;新增基于 RankGraph 的 NetInstance/TopoInstance 合成的物理层级链 physicalLevels(含构建、归一化、一致性校验与序列化),并让各 executor 的注册与 CalcAlgHierarchyInfo 调用随之适配;同时补充 POD 机型形态检测与老 CANN/老驱动的兼容降级处理。
主要改动
-
新增 V2 拓扑匹配框架: 新增
TopoMatchBaseV2基类与TopoMatchOneLevel/TopoMatchTwoLevel/TopoMatchThreeLevel/TopoMatchConcurrentV2(含topo_match_base_v2.cc/h等新文件),MatchTopo统一增加const AlgorithmProfile& profile参数;各 executor 注册由TopoMatch1D/TopoMatchMultilevel改为TopoMatchOneLevel/TopoMatchTwoLevel/TopoMatchThreeLevel,并通过if constexpr (std::is_base_of_v<TopoMatchBaseV2, AlgTopoMatch>)分支调用新签名或旧签名。 -
新增物理层级链数据结构与构建流程:
alg_param.h新增PhysicalLevelInfo、PhysicalLevelView、PhysicalSourceRef、PhysicalLevelIndex、AlgoType等结构,TopoInfoWithNetLayerDetails新增physicalLevels、physicalLevelNum、isPod字段并接入Serialize/DeSerialize(带PHYSICAL_LEVEL_NUM_LIMIT阈值校验与EndpointDesc可平凡复制断言);新增physical_level_build.cc/physical_level_normalize.cc实现BuildPhysicalLevels、NormalizePhysicalLevels、ValidatePhysicalLevels,任何失败一律降级为空视图,不影响CalcTopoShape返回与旧路径。 -
算法画像与调用链打通: 新增
BuildAlgorithmProfile按算法名推断algoTypes/engine,executor_v2_base增加SetAlgName/algName_,op_common.cc在CalcAlgHierarchyInfo前调用executor->SetAlgName(param.algName);AlgHierarchyInfoForAllLevel新增physicalIdxForAlgoLevels并纳入AlgResourceCtxSerializable序列化。 -
POD 机型形态检测与兼容降级:
topo_host.cc新增CalcDeviceFormFactor查询ACL_DEV_ATTR_DEVICE_FORM_FACTOR写入isPod并接入CalcTopoShape;hcalrtGetDeviceInfo增加quiet参数(失败改按 WARNING 降噪),adapter_acl.h以ACL_DEVICE_FORM_FACTOR_POD宏探测HCCL_SUPPORT_DEV_FORM_FACTOR以兼容老 CANN。 -
构建接入:
scatter_aicpu_kernel.cmake将新增的topo_match_base_v2.cc、topo_match_one_level.cc、topo_match_two_level.cc、topo_match_three_level.cc、topo_match_concurrent_v2.cc加入 AICPU 内核编译源文件列表。


Thanks for your pull-request.
The full list of commands accepted by me can be found at here.
You can get sig-info at here.
You can self-configure the PR merge rules for this repository. For more details, please refer to Here.
For more, you also can visit HICANN.
PR Approval Progress
⚠️ This PR does not yet meet the following requirements:lgtm (requires ≥ 2 person(s) per module)、approve (requires ≥ 1 person(s) per module)
Module Approval Details
| module | lgtm status | approve status |
|---|---|---|
| src | ❌ (0/2)(You can also ask: 程祥乐, 施秉辰, 颜业峰, 陈浩, 李标智) | ❌ (0/1)(You can also ask: 颜业峰, 文学敏, 李标智) |
💡 Tip:
- Committer can comment
/approveor/lgtm- Commenting
/approveimplies both code review (lgtm) and intent to merge (approve)
CLA Signature Pass
acoolntly, thanks for your pull request. All authors of the commits have signed the CLA. 👍


描述
关联的Issue
测试
文档更新
类型标签