Fix #38: 补全昇腾950系列硬件规格 (新增 Ascend950DT 等 4 个 SKU), 默认加载不变
- 数据源: 昇腾950_NPU架构白皮书 表3-1 (系列 SKU) / 表4-2 (Memory 层次) - 新增 hardware/ascend950dt.py: ASCEND950DT (36AIC/72AIV, HBM 4TB/s 144GB, L2 128MB 主bin) + ASCEND950DT_C32 + ASCEND950DT_C28 - ascend950pr.py: 新增 ASCEND950PR_C28 (28核, 1.4TB/s, L2 112MB) 与 gm_capacity_gb 信息字段; 注明 cube_peak_tflops 口径 (= 白皮书 "Cube+Vector 总算力" 行, 与 Cube 单行 432 的 12.5% 偏差待用户裁决) - __init__.py: SPECS 注册表 + get_spec(name), 默认仍为 ASCEND950PR, 现有 import 与调用点零改动 - 共架构交叉验证: 单核 Cube 13.5T (432/32=486/36), Vector fp32 27T/64核≈30T/72核 -> 128lane@1.65GHz; 表4-2 L1/L0/UB 各档一致 - docs/01_软件架构 + README 硬件层说明更新 - tests: TestIssue38 六例 (默认不变/注册表/DT派生量/AIV白皮书验证/DT路由 冒烟/未知KeyError); 87/87 通过; examples 44例 0 diff; 压力回归 10000 例干净, 分支分布与上轮逐数一致
This commit is contained in:
@@ -1,7 +1,8 @@
|
||||
"""Ascend950PR (DAV_3510) 硬件规格参数.
|
||||
|
||||
数值来源: 《BMM算子优化分析 v0.98》§二 + 昇腾950 NPU架构白皮书.
|
||||
换芯片时逻辑结构不变, 只需新增一份同结构参数表.
|
||||
数值来源: 《BMM算子优化分析 v0.98》§二 + 昇腾950 NPU架构白皮书 (表3-1 SKU 规格 /
|
||||
表4-2 Memory 层次). 换芯片时逻辑结构不变, 只需新增一份同结构参数表
|
||||
(系列其他 SKU 见文末 ASCEND950PR_C28 与 hardware/ascend950dt.py, issue#38).
|
||||
|
||||
单位约定: 算力 FLOP/s, 带宽 Byte/s, 容量 Byte, 时延 秒.
|
||||
|
||||
@@ -10,6 +11,11 @@ dtype 感知算力 (issue#28, 设计文档 docs/05 §2):
|
||||
提供 2x FP16 张量 TFLOPS, MXFP4 提供 4x FP16; FP32/TF32 同代比值为假设值
|
||||
(按 DaVinci 惯例 = 1/2, 白皮书未给同代比值), int8 假设同 FP8, 均待实测标定.
|
||||
AIV 逐元素通量按 lane 位宽等比假设 (16bit x2 / 8bit x4 / 4bit x8, 待标定).
|
||||
|
||||
口径注意 (issue#38): cube_peak_tflops 沿用 v0.98/用户澄清口径 = 白皮书表3-1
|
||||
"Cube+Vector 总算力" 行 (950PR 32核 = 486), 单核 15.1875T; 白皮书 "Cube算力"
|
||||
单行为 Cube 单元独立口径 (950PR 32核 = 432, 单核 13.5T)。两者差 12.5%,
|
||||
是否切换全模型口径待用户裁决 (本字段语义不变, 新增 SKU 同口径).
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
@@ -54,8 +60,9 @@ class NpuSpec:
|
||||
|
||||
# ---- L2 / GM ----
|
||||
l2_bytes: int = 128 * 1024 * 1024 # L2 Cache 128MB
|
||||
bw_l2: float = 5.2e12 # L2 读写带宽 5.2TB/s
|
||||
bw_l2: float = 5.2e12 # L2 读写带宽 5.2TB/s (白皮书未给, 用户澄清口径)
|
||||
bw_gm: float = 1.6e12 # GM(HBM) 带宽 1.6TB/s (读写共享)
|
||||
gm_capacity_gb: float = 128.0 # GM(HBM) 容量 GB (信息项, 模型暂不消费)
|
||||
|
||||
# ---- 搬移效率经验约束 (950PR 实测总结) ----
|
||||
dvalue_recommend: int = 512 # dValue 推荐值 (Byte), 更大无额外收益
|
||||
@@ -164,3 +171,15 @@ class NpuSpec:
|
||||
|
||||
|
||||
ASCEND950PR = NpuSpec()
|
||||
|
||||
# 950PR 28 核衍生版 (白皮书表3-1: 28 AIC / 56 AIV, HBM 1.4TB/s 112GB,
|
||||
# L2 112MB; L2 带宽未分档, 沿用 5.2TB/s 待标定; 总算力 425 为白皮书取整值,
|
||||
# 单核 15.179T 与主 bin 15.1875T 差 0.06% 属取整误差)
|
||||
ASCEND950PR_C28 = NpuSpec(
|
||||
name="Ascend950PR_C28",
|
||||
aic_num=28, aiv_num=56,
|
||||
cube_peak_tflops=425.0,
|
||||
l2_bytes=112 * 1024 * 1024,
|
||||
bw_gm=1.4e12,
|
||||
gm_capacity_gb=112.0,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user