想象你走进一座超级中央厨房。这里没有普通灶台,而是一排排标准化的智能工位——每个工位都有一位“AI 大厨”,灶上备着三口造型各异的锅:一口能同时翻炒上万份食材的超大炒锅,一口专管切配整筐蔬菜的流水线料理台,还有一口负责尝味调温的控制锅。食材按“离手越近越新鲜”的原则分层存放:案板上、手边架、后厨冷库、冷链物流中心。多间厨房之间由高速传菜电梯连成一片,一套统一的排菜系统调度着每道菜的火候与先后。 这就是华为昇腾(Ascend)打造的 AI 算力世界。昇腾不是一块孤零零的芯片,而是一整套软硬协同的生态:从面向不同场景的昇腾芯片家族,到内部的“达芬奇”式工位设计,再到指挥所有锅灶的软件管理体系。从手机里的语音助手,到云端训练千亿参数的大模型,背后都有它的身影。这篇文章将带你走进这座中央厨房,从芯片家族、工位内部构造、食材分级存储、厨房互联协作,到与西式厨房的对比,一步步看清昇腾凭什么算得又快又省。

岗位关联

了解昇腾硬件架构,是进入国产 AI 算力生态的必修课。掌握它,你才能在上云选型、模型部署与性能优化中做出真正专业的决策。

目录
  1. 可视化演示
  2. 昇腾芯片家族
  3. 达芬奇架构
  4. 三大计算单元
  5. 存储与数据流
  6. 互联与集群
  7. CANN软件栈
  8. 对标GPU生态
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

展示AI Core异构计算单元、Cube矩阵乘法加速、多级存储层次结构,步进切换查看达芬奇架构核心机制。

本节配有交互动效(进入视口后自动加载,约 3KB)。

AI Core:达芬奇异构架构 Cube Unit执行16x16矩阵乘加运算 Vector Unit处理SIMD向量运算 C = A x B + C 异构流水线实现AI计算高效加速

昇腾芯片家族

昇腾芯片不是单一型号,而是一个分工明确的“家族”。310 是社区门口的轻食小铺,功耗只有 8 瓦,安静省电,适合现场快速出餐;910 是承办大型宴席的总店,功耗高达 310 瓦,火力全开时能同时兼顾几千道菜。两者都叫昇腾,但设计目标截然不同:310 面向推理——模型已经训练好,只需对新数据快速给出答案;910 面向训练——要从海量数据里学出模型参数,需要巨大的计算吞吐。

用厨艺行话来说,推理好比“拿着菜谱按流程出菜”,训练好比“自己摸索出一道新菜谱”。摄像头识别画面里有没有人,是推理;用几千亿条文本教模型学会对话,是训练。昇腾 310 在 INT8 精度下达 16 TOPS 算力,昇腾 910 在 FP16 精度下达 256 TFLOPS 算力。这里的“精度”指数字的表示方式:TFLOPS 统计浮点(小数)运算,TOPS 统计整数运算,两者不能直接比大小。

选推理芯片还是训练芯片,就像选轻食铺还是总店:轻食铺省电灵活,但接不了千人宴;总店火力全开,却不可能搬进小区门口。理解家族分工,是读懂昇腾的第一步。

1 TOPS=1012 次运算/秒\displaystyle 1\ \text{TOPS} = 10^{12}\ \text{次运算}/\text{秒}
这段公式告诉我们:TOPS 是“每秒万亿次运算”的计量单位,芯片规格表上的数字越大,代表每秒能完成的运算越多。
  1. TOPS 的含义TOPS 是“每秒万亿次运算”的单位,Tera 表示 10 的 12 次方,就像用“碗”来计量一餐的饭量。
    1 TOPS=1012 次运算/秒1\ \text{TOPS} = 10^{12}\ \text{次运算}/\text{秒}
  2. 与 FLOPS 的分工FLOPS 专门统计浮点运算(带小数的数字),TOPS 统计整数运算。精度越低,硬件越容易堆算力,所以 INT8 的 TOPS 数字通常比 FP16 的 TFLOPS 大一倍。
    算力INT8≈2×算力FP16\text{算力}_{\text{INT8}} \approx 2 \times \text{算力}_{\text{FP16}}

达芬奇架构

有了门店,还得有厨房设计图。达芬奇(Da Vinci)架构就是昇腾的“后厨设计蓝图”,而 AI Core 是蓝图中可复制的“标准工位”。每个 AI Core 都像一位能独当一面的大厨,独立完成“取料—计算—写回”的完整流程,不需要别人帮忙。

一块昇腾芯片上,这样的标准工位重复排布了十几次到几十次。昇腾 910 集成数十个 AI Core,多个工位并行工作,构成了一张多核协同的算力网格。达芬奇架构的精髓是“统一架构、分层算力”:不同型号的昇腾芯片共用同一张设计蓝图,只是核心数量、缓存大小、存储带宽不同。这与 GPU 把所有小核心堆成大规模阵列的思路形成对比——GPU 靠“人多”,昇腾靠“人精”。

工位图纸统一,意味着培养“厨师”的成本可以被摊薄:无论 310 的小厨房还是 910 的巨型中央厨房,用的都是同一套技能,软件栈只需适配一次架构即可。

P总=P核×N核\displaystyle P_{\text{总}} = P_{\text{核}} \times N_{\text{核}}
芯片总算力约等于单个 AI Core 的算力乘以核心数量。这也是为什么核心越多,芯片的“火力”越猛。
  1. P总 表示芯片总算力整块芯片在单位时间内能完成的运算总量,好比整间厨房一个饭点的出菜总数。
    P总P_{\text{总}}
  2. P核 表示单核算力单个 AI Core 的运算能力,由内部三个计算单元共同决定,好比一位大厨的巅峰手艺。
    P核P_{\text{核}}
  3. N核 表示核心数量AI Core 数量越多,能同时处理的矩阵分块越多,但前提是数据搬运速度同步跟得上。
    P总=P核×N核P_{\text{总}} = P_{\text{核}} \times N_{\text{核}}

三大计算单元

每个 AI Core 工位上有三口锅。Cube 单元是巨型炒锅,一次能焖出 16×16×16 的块状“硬菜”;Vector 单元是配菜料理台,一次处理整筐食材;Scalar 单元是掌勺大厨的手和眼,负责决定先放盐还是先倒醋。

在计算机术语里,神经网络 90% 以上的计算量是矩阵乘法(卷积、全连接),这正是 Cube 单元的主场。Cube 本质是一个 16×16×16 的乘累加阵列,一个时钟周期完成 4096 次乘加;Vector 单元负责激活函数、归一化这类逐元素操作,拥有上百条并行通道;Scalar 单元负责地址计算、分支控制等“动脑”工作。三个单元像流水线一样在同一个时钟节拍里各司其职,互不阻塞。

三口锅的分工,决定了昇腾省电的秘密:与其用普通锅灶炒一万次小份菜,不如直接上大锅一次炒完。AI 计算中大量同构的矩阵乘,正是这种“大锅策略”的主场。

Cm×n=Am×k×Bk×n,MACs=m×k×n\displaystyle C_{m \times n} = A_{m \times k} \times B_{k \times n}, \qquad \text{MACs} = m \times k \times n
矩阵乘法把大规模计算集中成一种操作,Cube 单元一次可以吞下一整块矩阵,性价比极高。
  1. 矩阵乘法的意义卷积和全连接层本质都是矩阵乘法,把 AI 计算压缩成同一种“硬菜”,让专用硬件可以火力全开。
    Cm×n=Am×k×Bk×nC_{m \times n} = A_{m \times k} \times B_{k \times n}
  2. MAC 的计算量一次乘加(MAC)是“乘一次再加一次”,总次数等于三个维度相乘,这是估算算力需求的基本单位。
    MACs=m×k×n\text{MACs} = m \times k \times n
  3. Cube 的批量能力16×16×16 的阵列一个周期完成 4096 次乘加,相当于一次颠勺炒出 4096 份半成品。
    MACs单周期=16×16×16=4096\text{MACs}_{\text{单周期}} = 16 \times 16 \times 16 = 4096

存储与数据流

再快的锅也得有食材。昇腾的存储体系像厨房的分级仓储:L0 缓冲是案板上摊开的食材,L1 缓冲是手边的备料盒,L2 缓存是后厨冷库,HBM 则是冷链物流中心。离 AI Core 越近,存取越快,但容量越小。

L0 缓冲直接贴在计算单元旁,等待被塞进 Cube 的矩阵块;L1 为单个 AI Core 服务;L2 被多个 AI Core 共享;HBM(高带宽内存)是片外的大容量仓库,昇腾 910 配有多达 32GB 甚至 64GB 的 HBM。AI 计算的残酷真相是:搬运往往比计算更贵。一次从 HBM 取数的能耗,约是计算一次的几十倍。因此架构师设计多层缓冲与高带宽总线,让数据“按需逐级上案板”,并让取数与计算流水线重叠,掩盖搬运延迟。

理解了“近的快、远的满”,也就理解了为什么昇腾的软硬协同优化总在围绕“少搬数据”做文章——真正的顶级大厨,从不来回跑冷库。

B=D×f8 GB/s\displaystyle B = \frac{D \times f}{8}\ \text{GB/s}
带宽公式帮我们估算总线的搬运能力:数据位宽越大、频率越高,每秒能搬的食材就越多。
  1. D 为数据位宽一次能搬运多少比特(bit)的数据,好比传菜电梯一次能站几个人。
    D (bit)D\ (\text{bit})
  2. f 为时钟频率电梯每秒运行多少趟,频率越高搬运越快。
    f (Hz)f\ (\text{Hz})
  3. 除以 8 转字节8 bit 等于 1 Byte,带宽常用字节每秒(B/s)表示,所以除 8。
    B=D×f8 GB/sB = \frac{D \times f}{8}\ \text{GB/s}

互联与集群

宴席超过千人,一间厨房忙不过来。昇腾的绝活是让多间厨房通过高速传菜电梯连接成集群,这个“传菜电梯”叫 HCCS(华为缓存一致性系统),专门负责昇腾卡与卡之间的数据交换。

一台 Atlas 800 训练服务器里,8 张昇腾 910 卡通过 HCCS 组成全连接拓扑,任意两张卡之间都有直达链路。训练大模型时,梯度同步需要频繁的全局通信,HCCS 直连大幅减少了跨卡通信延迟。单条 HCCS 链路双向传输带宽可达数十 GB/s,8 卡全连接后单卡聚合互联带宽达到数百 GB/s 量级。这个角色类似英伟达的 NVLink,但走的是华为自研的缓存一致性协议,比常规以太网通信低一个数量级的延迟。

中央厨房的规模不是靠无限加盖厨房堆出来的,而是靠传菜电梯解决厨房之间的协作。集群的算力上限,经常不取决于炒菜的人,而取决于传菜的速度。

B聚合=B链路×N链路\displaystyle B_{\text{聚合}} = B_{\text{链路}} \times N_{\text{链路}}
聚合带宽约等于单条链路带宽乘以链路数量。多链路并行,才是集群通信的“高速公路”。
  1. B链 为单条链路带宽一条 HCCS 通道每秒能传多少数据,类比一座传菜电梯的运力。
    B链B_{\text{链}}
  2. N链 为链路数量8 卡全连接时,每张卡拥有与其余 7 卡直连的链路,链路数量越多通信越通畅。
    N链N_{\text{链}}
  3. 聚合带宽的计算多链路同时工作,总互联带宽近似为乘积,这正是把多张卡“拧成一股绳”的基础。
    B聚合=B链×N链B_{\text{聚合}} = B_{\text{链}} \times N_{\text{链}}

CANN软件栈

智能厨房不仅要有好锅好灶,还要有一套排菜系统。CANN(神经网络计算架构)就是昇腾后厨的数字化管理中台:把菜谱翻译成火候指令、把食材分配到正确的灶台、让每口锅都闲不下来。

CANN 向下对接昇腾硬件,向上支撑深度学习框架。它的四个关键部件分工明确:AscendCL 是面向开发者的统一编程接口(类似 CUDA),提供张量管理和算子调用 API;图引擎 GE 负责把神经网络计算图做算子融合、图剪枝等优化;算子编译器(如 TBE)把高层的算子描述编译成 AI Core 上的微指令;MindSpore 作为昇腾原生的深度学习框架,与底层深度适配。软硬协同的核心理念,是让硬件与软件联合设计,避免“硬件很强、软件不会用”的尴尬。

一套好的排菜系统,能让同样三口锅的出餐量翻倍。CANN 的意义,正是把昇腾硬件的每一分算力都“榨”出来。

T总=T计算+T搬运\displaystyle T_{\text{总}} = T_{\text{计算}} + T_{\text{搬运}}
一次 AI 运算的总时间 = 纯计算时间 + 数据搬运时间。软件栈的核心工作,就是让两者尽量重叠。
  1. T算 为纯计算时间Cube 等单元真正执行矩阵乘、向量运算消耗的时间,相当于大厨颠锅炒菜的时间。
    T计算T_{\text{计算}}
  2. T搬 为数据搬运时间数据在 HBM、L2、L1 之间来回移动的时间,常常大于计算时间,是性能的隐形杀手。
    T搬运T_{\text{搬运}}
  3. 优化目标通过算子融合与流水线调度,让计算和搬运并行,使总时间趋近于两者中较大的那个。
    T总=T计算+T搬运T_{\text{总}} = T_{\text{计算}} + T_{\text{搬运}}

对标GPU生态

GPU 是西式开放式厨房,几百个标准炉头一字排开,什么菜都能炒;NPU 是中餐中央厨房,专用大锅加流水线,AI 硬菜做得又快又省,但换成西餐甜点就有些施展不开。

英伟达 GPU 采用 SIMT 架构,用大量轻量核心掩盖延迟,擅长各类通用并行计算;昇腾 NPU 则用少量重型 AI Core 加专用矩阵单元,押注“AI 算力主要是矩阵乘法”这一事实。在矩阵密集型任务上,NPU 的每瓦特产出(能效比)通常更优。以昇腾 910 为例,FP16 下 256 TFLOPS,功耗 310W,能效比约 0.83 TFLOPS/W,与同代旗舰 GPU 处于同一水平甚至略优。但 GPU 的护城河在生态:CUDA 二十年积累的海量算子库和工具链,让开发者“装上即用”;昇腾生态正通过 CANN 兼容层、MindSpore 与模型迁移工具快速追赶。

厨房选型没有绝对胜负。如果主做 AI 硬菜、又看重能耗账单,昇腾是不错的选择;如果需要覆盖五花八门的通用计算,GPU 生态更省心。理性的从业者,应该用菜单(场景)决定厨房。

E=P算力W功耗 TFLOPS/W\displaystyle E = \frac{P_{\text{算力}}}{W_{\text{功耗}}}\ \text{TFLOPS/W}
能效比 = 算力 ÷ 功耗。同样的电费预算下,能效比越高的芯片能算出更多的结果。
  1. P算 为算力用 TFLOPS 衡量芯片的浮点性能,是芯片的“巅峰火力”。
    P算力 (TFLOPS)P_{\text{算力}}\ (\text{TFLOPS})
  2. W耗 为功耗芯片满负荷工作时的功率,单位瓦特,对应厨房的电费账单。
    W功耗 (W)W_{\text{功耗}}\ (\text{W})
  3. 能效比的意义每瓦特能换来多少算力,是数据中心降本增效的决定性指标。
    E=P算力W功耗 TFLOPS/WE = \frac{P_{\text{算力}}}{W_{\text{功耗}}}\ \text{TFLOPS/W}

AI 应用场景

大模型训练:Atlas 800 训练集群

阶段:模型训练(预训练与微调)

解决的问题:高端 GPU 供应链紧张、采购成本高企。昇腾 910 提供国产训练算力,HCCS 全连接保证多卡通信效率,CANN 图引擎自动做算子融合,降低对人工调优的依赖。

具体案例:某 AI 公司用搭载 8 张昇腾 910B 的 Atlas 800 训练服务器预训练 130 亿参数语言模型。通过 CANN 图引擎自动算子融合,训练吞吐提升约 30%;多卡梯度同步走 HCCS 全连接,通信时间占比控制在 15% 以内。

边缘推理:昇腾 310 智能盒子

阶段:模型推理部署

解决的问题:城市摄像头全天候分析需要低功耗设备,传统 GPU 功耗高、发热大,难以部署在无空调的弱电机房。

具体案例:某智慧园区用昇腾 310 智能盒子对 200 路摄像头做安全帽佩戴检测,整机功耗约 8W,可无风扇部署,单路检测延迟低于 30ms,一年电费不到传统 GPU 方案的十分之一。

昇腾云推理服务:ModelArts 弹性部署

阶段:推理服务化(MLOps)

解决的问题:模型上线后需要弹性伸缩、灰度发布、多租户隔离等工程能力,自建 GPU 集群运维成本高。

具体案例:用户用 MindSpore 在昇腾集群完成训练后,通过 ModelArts 一键部署为 API 服务,平台自动做弹性伸缩与资源调度;配合模型迁移工具,可将 PyTorch 模型快速转换到昇腾环境。

Python 演示

python84 行
"""模拟昇腾 AI Core 的分块矩阵乘法把大矩阵切成 16x16 的块, 分发给多个 AI Core 并行计算"""import random  class AscendSimulator:    """简化版昇腾芯片模拟器, 只关注 Cube 单元与多核调度"""     def __init__(self, num_cores=32, cube_size=16):        self.num_cores = num_cores        self.cube_size = cube_size        self.mac_count = 0        self.max_core_load = 0     def cube_multiply(self, a, b):        """模拟一个 Cube 单元完成小块矩阵乘, 并统计 MAC 次数"""        m, k, n = len(a), len(a[0]), len(b[0])        result = [[0] * n for _ in range(m)]        for i in range(m):            for j in range(n):                for p in range(k):                    result[i][j] += a[i][p] * b[p][j]                    self.mac_count += 1        return result     def slice_matrix(self, mat, r0, c0, size):        """切出以 (r0, c0) 为左上角的子矩阵"""        return [row[c0:c0 + size] for row in mat[r0:r0 + size]]     def matmul(self, a, b):        """分块矩阵乘, 将任务轮询分发给各 AI Core"""        n = len(a)        t = self.cube_size        result = [[0] * n for _ in range(n)]        tasks = []        for i in range(0, n, t):            for j in range(0, n, t):                for p in range(0, n, t):                    tasks.append((i, j, p))        core_load = {}        for idx, (i, j, p) in enumerate(tasks):            core_id = idx % self.num_cores            core_load[core_id] = core_load.get(core_id, 0) + 1            tile_a = self.slice_matrix(a, i, p, t)            tile_b = self.slice_matrix(b, p, j, t)            tile_c = self.cube_multiply(tile_a, tile_b)            for r in range(t):                for c in range(t):                    result[i + r][j + c] += tile_c[r][c]        self.max_core_load = max(core_load.values())        return result  def naive_matmul(a, b):    """朴素三重循环矩阵乘, 用于结果校验"""    n = len(a)    result = [[0] * n for _ in range(n)]    for i in range(n):        for j in range(n):            for p in range(n):                result[i][j] += a[i][p] * b[p][j]    return result  def main():    random.seed(42)    size = 32    a = [[random.randint(0, 9) for _ in range(size)] for _ in range(size)]    b = [[random.randint(0, 9) for _ in range(size)] for _ in range(size)]    sim = AscendSimulator(num_cores=32, cube_size=16)    c = sim.matmul(a, b)    ref = naive_matmul(a, b)    assert c == ref, "分块结果与朴素结果不一致"    print("矩阵规模: {}x{}, 分块大小: {}".format(size, size, sim.cube_size))    print("模拟 AI Core 数量: {}".format(sim.num_cores))    print("MAC 总次数: {}".format(sim.mac_count))    print("理论 MAC 次数: {}".format(size ** 3))    print("最忙核心的任务数: {}".format(sim.max_core_load))    print("结果校验: 通过")  if __name__ == "__main__":    main()
目的:用纯 Python 模拟昇腾 AI Core 的分块矩阵乘,演示硬件如何把大矩阵切成小块、轮询分发给多个核心并行计算,并用朴素矩阵乘校验结果正确性。
  1. self.mac_count = 0乘加计数器清零,相当于给厨房装了一台“出菜计数器”,最后能核对总工作量。
  2. def cube_multiply(self, a, b):模拟一个 Cube 单元完成小块矩阵乘,对应昇腾 AI Core 里 Cube 单元最擅长的 16×16 计算。
  3. self.mac_count += 1每完成一次乘加就记一笔,用它验证分块方式没有漏算或重算。
  4. def matmul(self, a, b):昇腾分块矩阵乘的入口,体现硬件把大矩阵切成小块再分发的思想。
  5. tasks.append((i, j, p))生成所有(行块、列块、中间块)组合,类似中央厨房把大订单拆成一张张任务单。
  6. core_id = idx % self.num_cores按取模轮询把任务分发给不同 AI Core,模拟多核并行调度。
  7. tile_a = self.slice_matrix(a, i, p, t)从大矩阵中切出 A 的子块,好比从冷库取出指定食材送到案板。
  8. assert c == ref, "分块结果与朴素结果不一致"用最朴素的矩阵乘结果做“对账”,证明分块调度计算正确。

常见误区

误区“既然都叫'卡',又能跑深度学习,昇腾不就是华为出的 GPU 吗?我看 API 也差不多。”

正解底层设计哲学完全不同。GPU 用成千上万个轻量核心做通用并行计算,像一大排普通炒锅靠数量取胜;昇腾 NPU 走“专用大锅 + 流水线”路线,AI Core 里专门盖了 Cube 单元做大矩阵乘,同功耗下矩阵算得更省。虽然用法相似(都是插在服务器上的板卡),但内部是两套厨艺。

为何常见:两者外形、接口、使用方式高度相似,且都能“炒菜”,初学者容易把“能跑 AI”当作“架构相同”。

误区“910 有几十个 AI Core,我把核心数翻一倍,训练速度不就翻倍了?”

正解受木桶效应与阿姆达尔定律约束。当数据从 HBM/L2 搬到计算单元的带宽饱和时,增加核心只会让数据在路上排队,核心反而空转。昇腾的优化重点从来不只是堆核,而是让“搬运”与“计算”流水线重叠。

为何常见:看规格表时只盯核心数和算力这些“加法指标”,忽略了存储带宽这类“乘法瓶颈”。

误区“910 说 256 TFLOPS,又说 512 TOPS,那后者肯定更强,选它没错。”

正解TFLOPS 计的是浮点(小数)运算,TOPS 计的是整数运算。INT8 精度低,硬件可以排布更多并行通道,所以通常约为 FP16 的两倍。对比时必须同时标注精度,就像比较两家店营业额要注明是人民币还是美元。

为何常见:厂商宣传喜欢挑数值大的报,媒体转述时常常省略精度前缀,导致“数字打架”。

误区“推理服务器当然要用 910,因为它的算力表最大。”

正解推理拼的是延迟和能效比,而不是峰值算力。310 功耗只有 8W,专为边缘低延迟设计;用 910 做小模型推理,算力闲置大半还费电,好比用中央厨房做一份盒饭,杀鸡用牛刀。

为何常见:把“算力上限”等同于“实际体验”,忽略了模型规模、时延要求与部署位置的不同约束。

误区“代码在 NVIDIA 上能跑,换到昇腾上改个设备名应该就差不多了。”

正解昇腾必须依靠 CANN 软件栈把计算图翻译成 AI Core 微指令,算子没适配、图优化没做好,硬件再强也白搭。PyTorch 上昇腾需要先安装昇腾插件并做算子适配,流程比“装上即用”多几步。

为何常见:CUDA 生态二十年积累让开发者习惯了“开箱即用”,低估了软件栈适配的工作量。

面试题

Q1. 昇腾 910 处理器最典型的应用场景是?

单选题 · mid

  • A.边缘端低功耗图像分类推理
  • B.云端大模型的高性能训练← 正确答案
  • C.手机端语音识别与关键词唤醒
  • D.嵌入式设备的实时目标检测

答案:B。910 是面向训练场景的旗舰芯片,功耗高但算力强,适合云端大模型训练。A、D 是推理场景,C 是端侧小模型场景,都不匹配 910 的设计定位;边缘推理的担当是昇腾 310。

Q2. 昇腾处理器中专门负责矩阵乘法计算的是?

单选题 · easy

  • A.标量计算单元
  • B.向量计算单元
  • C.立方体计算单元← 正确答案
  • D.统一数据缓冲区

答案:C。Cube(立方体)单元是 AI Core 内专职矩阵乘的部件,一个周期可完成 16×16×16 乘累加;向量单元处理逐元素运算,标量单元负责控制流,缓冲区只负责存放数据,都不承担矩阵乘。

Q3. 下列哪些单元属于昇腾 AI Core 的核心组成?

多选题 · mid

  • A.立方单元与向量计算单元← 正确答案
  • B.标量单元与统一缓冲区← 正确答案
  • C.矩阵乘单元与数据搬运模块
  • D.张量核心与光线追踪单元

答案:AB。昇腾 AI Core 由 Cube 立方单元、Vector 向量单元、Scalar 标量单元三类计算部件与 L0/统一缓冲区组成。C 中的“数据搬运模块”并非标准计算单元,D 是英伟达 GPU 的部件,均不属于达芬奇架构。

Q4. 在昇腾存储体系中,HBM 所承担的角色是?

单选题 · hard

  • A.容量最大的片外高带宽内存← 正确答案
  • B.计算单元内部最快的缓存
  • C.持久化存储训练样本数据集
  • D.负责算子指令的流水线缓冲

答案:A。HBM 是片外高带宽内存,容量达数十 GB,是全部计算数据的最终仓库,好比冷链物流中心。L0/L1 才是片内最快的缓存;样本数据集存在硬盘或对象存储;指令流水线缓冲属于片上逻辑,均与 HBM 角色不符。

Q5. 昇腾 AI 处理器采用的芯片架构名称是?

单选题 · easy

  • A.图灵架构
  • B.达芬奇架构← 正确答案
  • C.安培架构
  • D.伏特架构

答案:B。昇腾全系列采用华为自研达芬奇(Da Vinci)架构;图灵、安培、伏特都是英伟达 GPU 的架构名。记住“达芬奇”就抓住了昇腾硬件设计的核心。

Q6. 关于 HCCS 高速互联技术,下列说法正确的有?

多选题 · hard

  • A.用于多张昇腾卡之间的高速数据传输← 正确答案
  • B.可扩展组成八卡全连接的训练集群← 正确答案
  • C.提升单颗芯片内部核心之间的缓存一致性
  • D.降低芯片内核与片外内存之间的访存延迟

答案:AB。HCCS(华为缓存一致性系统)是面向多卡互联的高速通道,8 张 910 卡通过全连接拓扑组成训练集群。它解决的是卡与卡之间的数据同步,与片内核心一致性、片外访存延迟无关,C、D 均不属于 HCCS 的职责。

Q7. CANN 在昇腾体系中最核心的作用是?

单选题 · mid

  • A.提供编译运行所需的软件栈← 正确答案
  • B.设计芯片内部的电路布局
  • C.管理服务器的供电与散热
  • D.负责模型训练的数据采集

答案:A。CANN 是昇腾的计算架构软件栈,涵盖 AscendCL 接口、图引擎 GE、算子编译器,让上层框架能高效调度昇腾硬件。它不碰芯片物理设计,也不管服务器供电散热与数据采集。

Q8. 若昇腾 910 的 FP16 算力为 256 TFLOPS,其 INT8 算力通常约为?

单选题 · hard

  • A.128 TOPS
  • B.256 TOPS
  • C.512 TOPS← 正确答案
  • D.1024 TOPS

答案:C。整数运算精度低,硬件可在同一面积内排布更多并行通道,因此 INT8 算力通常是 FP16 的 2 倍,对应昇腾 910 官方标称的 512 TOPS。128 是减半,1024 是 4 倍,均不符合常见设计。

Q9. 下列哪些因素会显著影响 AI Core 的实际计算效率?

多选题 · mid

  • A.数据在存储层之间的搬运开销← 正确答案
  • B.矩阵乘法任务的切块与调度← 正确答案
  • C.CANN 算子编译优化的质量← 正确答案
  • D.服务器机箱外壳的散热装饰

答案:ABC。计算效率取决于存储带宽(搬运开销)、任务切分(并行度)与软件调度(算子优化质量),三者缺一不可。机箱外观只影响散热与颜值,不会改变 AI Core 的计算效率。

Q10. 昇腾 310 处理器的主要产品定位是?

单选题 · easy

  • A.面向边缘场景的低功耗推理← 正确答案
  • B.面向数据中心的通用计算
  • C.面向手机端的基带信号处理
  • D.面向桌面端的图形加速渲染

答案:A。310 专为边缘推理设计,8W 级别的功耗可实现摄像头、智能盒子等场景的实时推理。数据中心通用计算不是它的目标,基带处理和图形渲染也不是昇腾芯片的职责。