已合并
【PR】: add Ascend910_9363 ini #3559
handong12138创建于 7月10日
【PR】: add Ascend910_9363 ini #3559
已合并
handong12138创建于 7月10日
handong12138
7月10日

Pull Request

AR20260709249049

描述

add Ascend910_9363 ini

变更类型

请选择本次引入的变更类型:

关联的Issue

如何测试

描述测试此变更的步骤和前提条件:
1.
2.

核对清单

其他信息

在此添加任何其他关于本次 PR 的说明。

likedislike
Pull Request已成功合入, 合并人@CANN-robot
(感谢 handong12138 的贡献)
Hhandong12138
7月10日 添加了label:enhancement
Hhandong12138
7月10日 创建了 pull request,commit 2904a59d
atomgit-bot
atomgit-bot
7月10日 评论:

变更摘要

本次 PR 主要为华为昇腾 Ascend910 系列新增了 Ascend910_9363 芯片的平台配置文件,并在打包清单中注册该文件。同时修复了已有的 Ascend910_9362.inimemory_size 配置值使其翻倍(从 32GB 修正为 64GB)。

主要改动

  • 新增 Ascend910_9363.ini 平台配置文件:在 src/platform/platform_config/cann/ 目录下添加了完整的 SoC 平台配置,包含 [version](SoC 版本 Ascend910_9363、NPU 架构 2201)、[SoCInfo](20 个 AI Core、L2 缓存 168MB 等)、[AICoreSpec](Cube 频率 1500MHz、UB 大小 192KB 等)、[AICoreMemoryRates] 以及 [AICoreintrinsicDtypeMap][CUBECoreintrinsicDtypeMap][VectorCoreintrinsicDtypeMap] 三组 intrinsic 数据类型映射表。
  • 修正 Ascend910_9362.inimemory_size:将 [SoCInfo] 段中的 memory_size34359738368(32GB)修改为 68719476736(64GB),以匹配该芯片的实际内存规格。
  • 注册新配置文件到打包清单:在 scripts/package/module/ascend/RuntimeInc.xml 中添加 <file value="Ascend910_9363.ini" install_mod="440" entity="true"/>,确保该配置文件在打包发布时被纳入运行时模块。
likedislike
atomgit-bot
atomgit-bot
7月10日 评论:

代码审查

审查总结

文件 审查结果
scripts/package/module/ascend/RuntimeInc.xml ✅ 无问题 — XML 结构良好,新增条目位置正确,无 XXE 风险
src/platform/platform_config/cann/Ascend910_9362.ini ⚠️ 1 个 P3 提醒(memory_size 变更需确认)
src/platform/platform_config/cann/Ascend910_9363.ini ❌ 2 个 P2 问题([AICoreintrinsicDtypeMap] 条目缺少类型声明)

按优先级统计

  • P0: 0
  • P1: 0
  • P2: 2(均在 Ascend910_9363.ini 的 diff 版本中;workspace 中已被修正)
  • P3: 1(Ascend910_9362.ini memory_size 变更的确认提醒)

总体风险评估中等风险。9363 配置文件在 diff 版本中有两处 intrinsic 类型映射缺失(Intrinsic_vcmp 缺少 int16Intrinsic_mmad 缺少 h322f32/f32f32f32/f322f32),与同系列 9362 及所有其他 93xx 芯片配置不一致。不过 workspace 中的实际文件已包含这些修正,表明该问题可能已在后续 commit 中修复。9362 的 memory_size 翻倍变更需要硬件规格确认后方可排除风险。

类型 数量
🔴 阻塞 0
🟡 建议 2

💬 仅评论

likedislike
CANN-robotCANN-robot成员
7月10日 添加了label:cann-cla/yes
CANN-robot
CANN-robot成员
7月10日 评论:

CLA Signature Pass

hd920483084, thanks for your pull request. All authors of the commits have signed the CLA. 👍

likedislike
CANN-robot
CANN-robot成员
7月10日 评论:

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


PR Approval Progress

Congratulations! All modules have met the lgtm and approve requirements.

Module Approval Details

module lgtm status approve status
** 韩小龙, zhangpengpeng8, 王涛 (3/2) 韩小龙 (1/1)

💡 Tip:

  • Committer can comment /approve or /lgtm
  • Commenting /approve implies both code review (lgtm) and intent to merge (approve)
likedislike
CANN-robotCANN-robot成员
7月10日 将wangtao43,zhangpengpeng8,yanmingxiang,Reyn52166,ykl999,houyanbao,gcw_kUomxQ2l,Andy-lb,tingwood设为评审人
CANN-robotCANN-robot成员
7月10日 将gcw_kUomxQ2l,Andy-lb设为审查人
handong12138
7月10日 评论:

compile

likedislike
Hhandong12138
7月10日 update merge request[project id: 8810053, iid: 3559, commit_id: e815a358ffb832439e82d6cc84085dbbb4270004] virtual merging success
CANN-robotCANN-robot成员
7月10日 添加了label:ci-pipeline-running
CANN-robot
CANN-robot成员
7月10日 评论:

流水线任务触发成功
任务链接 [30a29f540d5f468a9828986250fb8e45][流水线指导]

任务名称状态日志下载链接
Compile_Ascend_X86 ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_ARM ✅ SUCCESS >>>>> >>>>>
pre_comment ✅ SUCCESS >>>>>
UT_Test_acl ✅ SUCCESS >>>>>
UT_Test_rts_v201 ✅ SUCCESS >>>>>
UT_Test_rts_c ✅ SUCCESS >>>>>
UT_Test_rts_david ✅ SUCCESS >>>>>
UT_Test_rts_910b ✅ SUCCESS >>>>>
UT_Test_rts_common ✅ SUCCESS >>>>>
UT_Test_platform ✅ SUCCESS >>>>>
UT_Test_qs ✅ SUCCESS >>>>>
UT_Test_aicpusd ✅ SUCCESS >>>>>
UT_Test_tsd ✅ SUCCESS >>>>>
UT_Test_error_manager ✅ SUCCESS >>>>>
UT_Test_slog ✅ SUCCESS >>>>>
UT_Test_atrace ✅ SUCCESS >>>>>
UT_Test_adump ✅ SUCCESS >>>>>
UT_Test_mmpa ✅ SUCCESS >>>>>
PreSmoke_A900_npupool ✅ SUCCESS >>>>>
UT_Test_msprof ✅ SUCCESS >>>>>
UT_Test_rts_report ✅ SUCCESS >>>>>
UT_Test_msprof_report ✅ SUCCESS

[2026-07-10 09:51:24]    CI执行结束

likedislike
CANN-robot
CANN-robot成员
7月10日 评论:

流水线任务触发成功
任务链接 [7606cf97ae10462b9835e6c0e2aa9200][流水线指导]

任务名称状态日志下载链接
codecheck ✅ SUCCESS >>>>>
SCA ✅ SUCCESS >>>>>
antipoison ✅ SUCCESS >>>>>
codecheck_Check_Pr ✅ SUCCESS
codecheck_style ✅ SUCCESS >>>>>
codecheck_precommit ✅ SUCCESS >>>>> >>>>>
StaticCheck_codespell_check ✅ SUCCESS
StaticCheck_link_validity_check ✅ SUCCESS
StaticCheck_resource_existence_check ✅ SUCCESS
StaticCheck_tag_closed_check ✅ SUCCESS
StaticCheck_markdownlint ✅ SUCCESS

[2026-07-10 09:45:13]    CI执行结束

likedislike
atomgit-bot
atomgit-bot7月10日进行代码检视1
src/platform/platform_config/cann/Ascend910_9363.ini
@@ -0,0 +130,4 @@
130+33=Intrinsic_vmadd|float16,float32
131+34=Intrinsic_vmaddrelu|float16,float32
132+42=Intrinsic_vsel|float16,float32
133+43=Intrinsic_vcmp|float16,float32,int16
atomgit-bot
atomgit-bot7月10日评论:

🟡 Medium Priority

变更行:Ascend910_9363.ini diff 第 133 行,43=Intrinsic_vcmp|float16,float32

受影响的行为/契约[AICoreintrinsicDtypeMap]Intrinsic_vcmp(向量比较)内在函数的数据类型映射表缺少 int16 类型声明(即应为 43=Intrinsic_vcmp|float16,float32,int16)。

失败模式:Ascend910_9363 与 9362 共享相同的 AIC_version=AIC-C-220Arch_type=4NpuArch=2201Chip_type=5,属于同一代芯片架构。在同系列所有其他芯片配置(9362、9372、9381、9382、9391、9392)的 [AICoreintrinsicDtypeMap] 中,43=Intrinsic_vcmp 均包含 ,int16。缺少该类型声明意味着当编译器/AICore 尝试生成 int16 向量比较操作时,将找不到匹配的类型映射,可能导致编译失败或回退到错误的行为路径。

注意:workspace 中该文件已被修正为 43=Intrinsic_vcmp|float16,float32,int16,此处报告的是 diff 版本中的问题。

建议:将第 133 行改为 43=Intrinsic_vcmp|float16,float32,int16,与 9362 及所有其他 93xx 系列芯片配置保持一致。

likedislike
atomgit-bot
atomgit-bot7月10日进行代码检视1
src/platform/platform_config/cann/Ascend910_9363.ini
@@ -0,0 +119,4 @@
119+19=Intrinsic_vcgadd|float16,float32
120+20=Intrinsic_vcpadd|float16,float32
121+24=Intrinsic_vconv|f322f32r,f322f32f,f322f32c,deq,f322f32a,f322f32z,f322f16,f322f16r,f322f16f,f322f16c,f322f16a,f322f16z,f322f16o,f322s64r,f322s64f,f322s64c,f322s64a,f322s64z,f322s32r,f322s32f,f322s32c,f322s32a,f322s32z,f322s16r,f322s16f,f322s16c,f322s16a,f322s16z,f162f32,f162s32r,f162s32f,f162s32c,f162s32a,f162s32z,f162s16r,f162s16f,f162s16c,f162s16a,f162s16z,f162s8,f162s8r,f162s8f,f162s8c,f162s8a,f162s8z,f162u8,f162u8r,f162u8f,f162u8c,f162u8a,f162u8z,u82f16,s82f16,s162f16,s162f16r,s162f16f,s162f16c,s162f16a,s162f16z,s162f32,s162s8,s162u8,s322f32,s322f32r,s322f32f,s322f32c,s322f32a,s322f32z,s322f16,s322s64,s322s16,s642s32,s642f32r,s642f32f,s642f32c,s642f32a,s642f32z,f322bf16r,f322bf16f,f322bf16c,f322bf16a,f322bf16z,bf162f32,bf162s32r,bf162s32f,bf162s32c,bf162s32a,bf162s32z
122+25=Intrinsic_mmad|u32u8u8,s32s8s8,s32u8s8,f16f16f16,f32f16f16,f16f16u2,u8,s8,f162f16,f162f32,f16u2,u8s8,h322f32,f32f32f32,f322f32
atomgit-bot
atomgit-bot7月10日评论:

🟡 Medium Priority

变更行:Ascend910_9363.ini diff 第 122 行,25=Intrinsic_mmad|u32u8u8,s32s8s8,s32u8s8,f16f16f16,f32f16f16,f16f16u2,u8,s8,f162f16,f162f32,f16u2,u8s8

受影响的行为/契约[AICoreintrinsicDtypeMap]Intrinsic_mmad(矩阵乘加)内在函数的数据类型映射表缺少 ,h322f32,f32f32f32,f322f32 三种类型组合(半精度→float32 累加、纯 float32、float32→float32)。

失败模式:9363 与 9362 共享相同的 AIC 版本(AIC-C-220)和架构参数。在同系列所有其他芯片配置(9362、9372、9381、9382、9391、9392)的 [AICoreintrinsicDtypeMap] 中,25=Intrinsic_mmad 均包含尾部的 ,h322f32,f32f32f32,f322f32。缺少这些类型组合将导致编译器无法为这些常见精度组合生成正确的矩阵乘加指令,可能引起编译失败或运行时精度回退。

注意:workspace 中该文件已被修正,此处报告的是 diff 版本中的问题。

建议:将第 122 行改为在末尾追加 ,h322f32,f32f32f32,f322f32,与 9362 及所有其他 93xx 系列芯片配置保持一致。

likedislike
CANN-robotCANN-robot成员
7月10日 删除了label:ci-pipeline-running
CANN-robotCANN-robot成员
7月10日 添加了label:ci-pipeline-passed
Hhandong12138
7月10日 修改了pull request 的描述
Zzhangpengpeng8成员
7月10日 通过了评审
zhangpengpeng8成员
7月10日 评论:

/lgtm

likedislike
wangtao成员
7月10日 评论:

/lgtm

likedislike
CANN-robotCANN-robot成员
7月10日 添加了label:lgtm
shane成员
7月10日 评论:

/lgtm
/approve

likedislike
CANN-robotCANN-robot成员
7月10日 添加了label:approved
CANN-robotCANN-robot成员
7月10日 解决了最后一个问题
CANN-robotCANN-robot成员
7月10日 合入了pull request