设想你经营一家名叫“昇腾”的餐厅。每天要来三千桌客人,每桌都要一道招牌大菜——“矩阵炖乘法”。你得在后厨准备足够大的灶台(算力)、足够近的食材冰柜(内存),还得跑得够快的传菜窗口(互联)。餐厅开业第一年,你只有一个独灶台,叫910B,每天最多接待一千桌。生意太好,你干脆盘下隔壁门面,把两个灶台焊成“连体双灶”,命名为910C。这下接待力翻倍,只是两个灶台之间得开扇窗口递菜,速度打个小折扣。 本文要讲的,就是华为这套“AI厨房”的改造故事:从910B到910C,灶台(CUBE算力)怎么变大、冰柜(HBM内存)怎么扩容、传菜窗(HCCS互联)怎么打通,以及它如何真的给千亿规模的大模型“上菜”。读完你会明白,国产AI芯片并不是纸上谈兵,而是已经端上了真实训练的餐桌。

岗位关联

了解昇腾910B/910C的架构演进,是AI工程师选型国产算力、规划大模型训练集群的必修课,也是理解“算力自主可控”战略的最小切口。

目录
  1. 可视化演示
  2. 昇腾芯片定位
  3. CUBE算力核心
  4. HBM高带宽内存
  5. 双芯堆叠封装
  6. 规格对比升级
  7. 千亿模型实战
  8. 软件生态适配
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

展示昇腾910B与910C规格对比、达芬奇架构Cube/Vector/Scalar三引擎协同及Atlas集群HCCS互联训练。

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

910B vs 910C规格对比 910B: 320 TFLOPS / 64GB HBM 910C: 640 TFLOPS / 128GB 双芯堆叠 910C = 910B × 2 (双芯粒封装) 算力翻倍

昇腾芯片定位

在AI世界的顶级酒店里,英伟达H100是那位拿过米其林三星的名厨。华为想证明自家后厨也能撑起国宴,于是亮出了昇腾系列——专为大模型训练设计的AI加速芯片。昇腾910B和910C,就是这间后厨里的两位“掌勺师傅”。910B是2023年前后登场的招牌主厨,对标英伟达的A100/H100;910C则是升级版,用双芯堆叠把火力再拉高一截。

昇腾不是普通处理器,而是AI专用芯片NPU(神经网络处理单元)。它和英伟达GPU一样,把绝大部分面积让给了矩阵运算引擎,专门伺候大模型训练里最频繁的“矩阵乘法”这道硬菜。为什么大模型这么吃算力?因为训练一个千亿参数模型,模型每读一个词元,都要做一次完整的“前向+反向”计算,这个代价乘以天文数字般的词元总数,就是必须由芯片扛下的总计算量。

大模型训练需要海量算力,业界常用一个简洁公式估算总计算量:

其中N为模型参数量,D为训练词元总数。

所以,昇腾芯片的使命就是为这盘“大模型硬菜”备足火力。910B是第一版单灶台设计,910C则是把火力翻倍的连体双灶——它们都指向同一个目标:让国产AI训练不再看外人脸色。

训练计算量≈6×N×D\displaystyle \text{训练计算量} \approx 6 \times N \times D
  1. 参数量N模型里有多少个可学习的权重参数。以千亿模型为例,N约等于1000亿(100B),参数量越大,每次“翻炒”食材的量越大。
    N=100×109N = 100 \times 10^9
  2. 词元数D训练语料被切分成的“词元”总数。1.4万亿词元意味着模型要“读完”全部训练文本,每个词元都要做一次计算。
    D=1.4×1012D = 1.4 \times 10^{12}
  3. 系数6每个参数、每个词元大约需要6次浮点运算——前向传播约2次,反向传播约4次(权重梯度+激活梯度)。这是业界公认的经验常数。
    FLOPs≈6×N×D\text{FLOPs} \approx 6 \times N \times D

CUBE算力核心

后厨里最能干的“颠勺师傅”叫CUBE。它不干杂活,只做一道菜:矩阵乘加(A×B+C)。大模型训练里超过九成的计算量都是这道菜翻来覆去地炒,所以CUBE方阵越大、翻炒越快,芯片的算力天花板就越高。

在昇腾芯片内部,CUBE是一个矩阵乘加阵列——想象一个16×16的小方阵,每个格子都有一个乘加单元,能把两个矩阵的对应元素成对相乘再加总。一次指令就能完成整块小矩阵运算,这比CPU一个个数字“单挑”快了千百倍。英伟达也有类似设计,叫Tensor Core(张量核心),思路同源。

算力标称值通常用TOPS表示,即每秒万亿次操作。昇腾910B的FP16算力约320 TOPS,910C因双芯堆叠升至约640 TOPS。作为参照,英伟达H100 SXM的FP16约为989 TOPS——昇腾虽有差距,但已站上了同一量级的擂台。

CUBE单元的标称算力可以这样理解:

CUBE方阵就像灶台的“明火等级”——火越大,同样一锅菜翻熟得越快。但光有火不行,食材也得跟得上,于是下一个关键部件是“食材冰柜”HBM。

CUBE算力≈M×M×f×k\displaystyle \text{CUBE算力} \approx M \times M \times f \times k
  1. 乘加阵列规模M×MCUBE方阵的“格子总数”。若M=16,则有256个乘加单元,一次可处理16×16的矩阵块。
    M×M=16×16=256M \times M = 16 \times 16 = 256
  2. 时钟频率f方阵每秒“颠勺”的次数,单位GHz。频率越高,单位时间内完成的矩阵运算越多。
    f=1.8 GHzf = 1.8\ \text{GHz}
  3. 精度系数k不同数据类型(FP16、INT8等)单位时钟能处理的运算次数不同。FP16下的k取1,INT8下往往翻倍。
    kFP16=1k_{\text{FP16}} = 1

HBM高带宽内存

大厨炒菜最怕什么?怕配菜员跑得慢。在CPU时代,“配菜员”是传统内存总线,距离远、速度慢,算力再高也会饿肚子。昇腾后厨的解决办法是:把“食材冰柜”直接搬到灶台旁边,这就是HBM高带宽内存。

HBM(High Bandwidth Memory)是一种3D堆叠式内存,像叠罗汉一样把多层DRAM芯片叠起来,再通过硅中介层与计算芯片封装在同一块基板上。它离计算单元“近在咫尺”,所以延迟低、带宽极高——是传统DDR内存带宽的十倍以上。对大模型训练来说,模型参数和中间激活值都要住在HBM里:容量决定能不能装下千亿参数,带宽决定每秒钟能往CUBE灶台喂多少食材。

昇腾910B配备约64GB HBM,峰值带宽约1.6TB/s;910C因为双芯各带一套HBM,容量约128GB、带宽约3.2TB/s。带宽的物理上限可这样估算:

冰柜越近,出菜越快。HBM就是贴着灶台的“食材直送带”——容量翻倍意味着910C能一口接住千亿模型的全部参数,不用频繁“出去采购”。但冰柜多了,两个灶台之间的配合又成了新问题。

内存带宽=W×f×2\displaystyle \text{内存带宽} = W \times f \times 2
  1. 总线位宽W内存数据线总数,单位bit。位宽越宽,一次搬运的“食材”越多。
    W=4096 bitW = 4096\ \text{bit}
  2. 时钟频率f内存的等效工作频率,单位GHz。频率越高,数据搬运越频繁。
    f=2.0 GHzf = 2.0\ \text{GHz}
  3. 双倍数据速率2DDR类内存在时钟上升沿和下降沿都传数据,等效翻倍,所以乘以2。
    2×f×W=2×2.0 GHz×4096 bit2 \times f \times W = 2 \times 2.0\ \text{GHz} \times 4096\ \text{bit}

双芯堆叠封装

一个灶台不够用怎么办?老办法是再买一个,但厨房面积有限、成本也高。华为的选择是:把两颗成熟的小die封装在一个底座上,做成“连体双灶”——这就是910C的双芯堆叠封装。

在芯片行业,这种做法叫Chiplet(芯粒)策略:不追求单颗die无限做大,而是把多颗成熟的小die拼装起来。单颗die面积小,良率高、成本低;两颗并排,总算力和总显存近似翻倍。两颗die之间通过高速总线连通,就像两个灶台之间开了一排传菜窗口。这个思路与英伟达新一代B200的双die方案异曲同工。

华为在910C上延续了910B的成熟单die设计,用先进封装将两颗die并排放置于同一基板,片间通过高速互联总线交换数据。互联会引入额外延迟和带宽开销,所以最终性能不是严格的2倍,而是接近2倍打个八九折。这个“打折”程度可以用一个效率系数衡量:

所以,“连体双灶”不是简单地把两个灶头摞在一起——窗口开多大、菜怎么递,处处是工程学问。910C的智慧在于“用成熟小die拼出大算力”,避开单颗超大die那低到可怕的良率天坑。

P910C≈2×P910B×η互联\displaystyle P_{\text{910C}} \approx 2 \times P_{\text{910B}} \times \eta_{\text{互联}}
  1. 单芯算力P₉₁₀B910B单颗die的FP16算力,约320 TOPS。它也是910C里每颗die的“单灶火力”。
    P910B=320 TOPSP_{\text{910B}} = 320\ \text{TOPS}
  2. 翻倍系数2两颗完全相同的die并行工作,理论总算力翻倍。
    2×P910B=640 TOPS2 \times P_{\text{910B}} = 640\ \text{TOPS}
  3. 互联效率ηdie间通信存在延迟与带宽瓶颈,通常取0.8~0.95。若η=0.9,则实际有效算力约576 TOPS。
    η互联=0.9\eta_{\text{互联}} = 0.9

规格对比升级

把两位“大师傅”的简历并排放在桌上,差距一目了然。昇腾910B与910C的核心规格对比如下:

| 项目 | 昇腾910B | 昇腾910C |

|---|---|---|

| FP16算力 | 约320 TOPS | 约640 TOPS |

| HBM容量 | 约64 GB | 约128 GB |

| HBM带宽 | 约1.6 TB/s | 约3.2 TB/s |

| 核心封装 | 单die | 双die合体 |

| 片间互联 | HCCS | HCCS + die间总线 |

可以看到,每一项关键指标都大致翻倍——这并非巧合,而是双die堆叠的直接红利:两颗910B级别的die合体,带来算力、内存、带宽的同步翻番。当然,实际部署中还要考虑功耗上升、散热设计和通信损耗等代价。

规格提升倍数的计算非常直接:

这张“菜单”告诉我们:910C不是另起炉灶的全新芯片,而是910B的“威力加强版”——用最成熟的组件拼出最大化的火力。但纸上参数终究要经过实战检验,下一节我们就把它请进千亿模型训练的后厨。

P910CP910B=640320=2,H910CH910B=12864=2\displaystyle \frac{P_{\text{910C}}}{P_{\text{910B}}} = \frac{640}{320} = 2,\qquad \frac{H_{\text{910C}}}{H_{\text{910B}}} = \frac{128}{64} = 2
  1. 算力比640/320910C的FP16标称算力除以910B,得到算力提升约2倍。
    640320=2\frac{640}{320} = 2
  2. 显存比128/64HBM容量同样翻倍:910C的128GB对910B的64GB。
    12864=2\frac{128}{64} = 2
  3. 倍数归一两个比值都约等于2,说明910C是对910B的“等比例放大版”。
    2≈22 \approx 2

千亿模型实战

前厅来了一桌超级贵宾——“千亿参数大模型”。后厨要多久才能把这道菜端上桌?答案藏在两个变量里:总菜量(总计算量)和上菜速度(集群总算力×利用率)。

真实训练中,硬件利用率(MFU,即每秒真正用于计算的占比)通常只有40%~60%,其余时间在等数据加载、通信同步、算子切换。这正是“算力翻倍但时间不严格减半”的深层原因。昇腾910系列在配合CANN软件栈后,已能在千亿参数模型上跑通训练,并支持千卡集群的并行扩展。

训练时长的核心估算公式如下:

双灶台的威力在千亿实战中兑现:不是纸面翻倍,而是真正把训练周期砍掉将近一半。对AI团队来说,每少一天训练都是真金白银——但这有个前提:软件生态得先跟上。

T训练=6×N×Dn×P×U\displaystyle T_{\text{训练}} = \frac{6 \times N \times D}{n \times P \times U}
  1. 总计算量6ND模型参数N与词元数D之积再乘6,就是整场训练需要完成的浮点运算总数。
    FLOPs=6×100×109×1.4×1012\text{FLOPs} = 6 \times 100 \times 10^9 \times 1.4 \times 10^{12}
  2. 卡数n集群中并行的AI芯片数量。千卡集群意味着把总计算量切分成1000份并行处理。
    n=1024n = 1024
  3. 单卡算力P与利用率UP需要换算成每秒浮点运算数(TOPS×10¹²),再乘以U(MFU)得到每卡有效“出菜速度”。
    P×U=640×1012×0.45P \times U = 640 \times 10^{12} \times 0.45
  4. 相除得时间总“菜量”除以总“上菜速度”,得到以秒计的训练时长,再除以3600即小时数。
    T=6NDn×P×UT = \frac{6ND}{n \times P \times U}

软件生态适配

硬件是灶台,软件是菜谱。英伟达的CUDA生态像一套“通用西餐菜谱”,几乎人人会读;昇腾要让人愿意用,就得把这套菜谱翻译成自己的“中餐做法”——这就是CANN的使命。

CANN是华为的AI计算架构(类似CUDA),包含底层驱动、算子库和编译器,负责把主流深度学习框架(如PyTorch、MindSpore)里的算子自动映射到昇腾的CUBE单元上。经过几年追赶,主流大模型如Llama、ChatGLM、Qwen都已在昇腾上跑通训练与推理。MindSpore则是华为自家的深度学习框架,与CANN深度协同,开箱即用。

迁移成本不可忽视:CUDA代码不能直接跑在昇腾上,需要改写为Ascend C或通过CANN的适配层转换;部分自定义算子需要重写并逐一调优。综合来看,迁移成本可以由三部分叠加估算:

菜谱翻译好了,后厨才能真正开张。昇腾的生态虽还在追赶CUDA,但“国产后厨”已经能让大模型吃饱吃好——这是国产AI芯片从“能用”走向“好用”的关键一跃。

迁移成本=α×L+β×S+γ×T\displaystyle \text{迁移成本} = \alpha \times L + \beta \times S + \gamma \times T
  1. 代码改写量L与权重α需要改写的代码行数,乘以每行代码的平均改写工时。L越大,成本越高。
    α×L\alpha \times L
  2. 算子适配数S与权重β需要手写或用Ascend C重写的自定义算子数量,每个算子都要单独开发与验证。
    β×S\beta \times S
  3. 调优周期T与权重γ迁移后反复实验、对齐精度、优化性能所花费的日历时间,这是最容易被低估的部分。
    γ×T\gamma \times T

AI 应用场景

千亿模型预训练集群规划

阶段:模型训练

解决的问题:进口AI芯片受出口管制,训练集群扩充困难。用昇腾910C搭建国产千卡集群,以可控的规模成本完成千亿参数模型的预训练。

具体案例:某AI公司在昇腾910C集群上训练1300亿参数的中文大模型,按 6ND/(nPU) 公式估算训练周期,并监控MFU指标优化数据加载与通信策略,最终在约30天内完成预训练。

CUDA到CANN的算子迁移

阶段:模型适配与部署

解决的问题:已有模型基于CUDA开发,直接迁移到昇腾会产生大量不兼容算子。需要工程师用Ascend C重写关键算子,并借助CANN的自动映射能力降低迁移成本。

具体案例:算法工程师将FlashAttention注意力算子从CUDA改写为Ascend C实现,在910C上反复调优后,注意力计算效率达到H100平台的约85%~90%。

国产化算力统一调度平台

阶段:算力资源管理

解决的问题:数据中心内同时存在NVIDIA与昇腾两类芯片,任务调度混乱、算力闲置。需要一套统一平台按任务特性把推理与训练分配到不同芯片上。

具体案例:云平台架构师在Kubernetes上构建混合调度器,将实时推理请求优先调度至昇腾910C(国产化合规),将大规模预训练任务安排在H100集群,整体GPU利用率提升约20%。

Python 演示

python33 行
# 昇腾910B/910C 大模型训练时长估算示例class AscendChip:    """昇腾AI芯片的简化模型"""    def __init__(self, name, fp16_tops, hbm_gb, hbm_bw_tbs):        self.name = name        self.fp16_tops = fp16_tops          # FP16算力, 单位TOPS        self.hbm_gb = hbm_gb                # HBM容量, 单位GB        self.hbm_bw_tbs = hbm_bw_tbs        # HBM带宽, 单位TB/s     def train_hours(self, params_b, tokens_b, cards, mfu):        """估算训练大模型所需小时数        params_b: 参数量(10亿), tokens_b: 词元数(10亿),        cards: 卡数, mfu: 硬件利用率        """        total_flops = 6 * params_b * 1e9 * tokens_b * 1e9        per_card = self.fp16_tops * 1e12 * mfu        seconds = total_flops / (per_card * cards)        return round(seconds / 3600, 1)  chip_910b = AscendChip("昇腾910B", 320, 64, 1.6)chip_910c = AscendChip("昇腾910C", 640, 128, 3.2) PARAMS_B = 100   # 1000亿参数TOKENS_B = 1400  # 1.4万亿词元CARDS = 1024     # 千卡集群MFU = 0.45       # 典型硬件利用率 for chip in (chip_910b, chip_910c):    hours = chip.train_hours(PARAMS_B, TOKENS_B, CARDS, MFU)    print(f"{chip.name}: 训练约需 {hours} 小时"          f"({round(hours / 24, 1)} 天), "          f"HBM容量 {chip.hbm_gb}GB, 带宽 {chip.hbm_bw_tbs}TB/s")
目的:用训练时长公式对比昇腾910B与910C在千亿参数场景下的理论训练周期。
  1. total_flops = 6 * params_b * 1e9 * tokens_b * 1e9按6ND公式计算训练总浮点运算次数:6倍×参数量×词元数。
  2. per_card = self.fp16_tops * 1e12 * mfu把TOPS换算为每秒实际有效运算数(乘1e12再乘利用率MFU)。
  3. seconds = total_flops / (per_card * cards)总“菜量”除以总“上菜速度”,得到训练总秒数。
  4. for chip in (chip_910b, chip_910c):遍历两代芯片,方便直接对比训练周期差异。

常见误区

误区我以为910C的算力从320翻到640 TOPS,那训练1000亿参数模型的时间也应该严格减半。毕竟两个灶头一起烧,菜肯定熟得更快嘛。

正解算力翻倍只是理论上限,实际还要看互联效率(η约0.8~0.95)和硬件利用率MFU。双die之间通信变多,反而可能让MFU小幅下降。用完整公式 6ND/(nPU) 估算后,训练时间只会接近减半而非严格减半,就像两台灶并排,中间传菜口如果堵了,实际提速会打折扣。

为何常见:大家习惯用“理想最大算力”直接做除法,忽略了整个系统里各个部件速度不均衡、短板决定最终提速的Amdahl定律。

误区不就是把两颗910B用胶水粘在基板上吗?这有什么技术含量,我也能行。

正解双die封装需要解决信号完整性、供电网络、散热分布与良率成本四大难题。两颗die之间的高速总线要求极短的等长布线、精确的时钟同步和复杂的功耗墙管理,任何一根连线的微小偏差都可能导致整卡报废。英伟达B200也采用类似双die方案,说明这条路并不简单。

为何常见:普通用户看到“两颗拼一起”很容易联想到“堆料”,而堆料在消费电子里往往等于简单的配置叠加,掩盖了背后微纳尺度的工程复杂性。

误区都是华为造的芯片,那昇腾910C肯定也能用在手机里,让手机跑大模型,对吧?

正解麒麟是手机SoC(含CPU/GPU/NPU),功耗只有几瓦;昇腾910B/910C是数据中心AI加速卡,功耗约数百瓦、需要水冷散热,形态是PCIe插卡或整机模组。两者就像叉车和跑车——都是车,但用途天差地别,昇腾不可能塞进手机。

为何常见:媒体常以“华为芯片”一言蔽之,大众对SoC与AI加速卡这两条完全不同的产品线缺乏区分意识。

误区网上很少看到有人用昇腾训练千亿模型,是不是它只能做做推理演示?PPT芯片罢了。

正解昇腾910系列已支撑多个国产大模型的预训练,支持千卡并行、混合精度与梯度同步;CANN+MindSpore也已跑通LLaMA、Qwen等主流架构。虽然性能与生态仍有差距,但“能训练千亿模型”已是事实。

为何常见:公众看到的权威评测少,生态冷启动期的“声音小”被误读为“不存在”,加上部分自媒体夸大负面案例,加剧了误解。

误区既然HBM是大模型的关键,那把显存堆到512GB甚至1TB,训练就更快了。

正解HBM成本极高,且容量与带宽需要和算力匹配——算力不够,显存再多也只是闲置“冰柜”。910C的128GB已经能装下千亿参数模型(约200GB权重用混合并行切分到多卡),盲目扩大单卡容量反而推高成本与功耗,不如优化卡间通信和利用率。

为何常见:外行看训练瓶颈时常只盯着显存数字,忽略了算力、带宽、通信三者的木桶效应。

面试题

Q1. 昇腾910C相比910B最核心的架构改进是什么?

单选题 · easy

  • A.采用更先进的3nm光刻工艺
  • B.双die堆叠合体封装← 正确答案
  • C.增加显卡RGB散热灯效
  • D.换成ARM手机处理器核心

答案:B。910C本质是两颗910B级die的Chiplet合体,从而获得算力与显存翻倍。制程并没有代差式跨越,RGB灯效与手机CPU均与数据中心加速卡无关。故选B。

Q2. 昇腾芯片中专门负责矩阵乘加运算的核心单元是?

单选题 · easy

  • A.CPU核心
  • B.CUDA核心
  • C.CUBE单元← 正确答案
  • D.神经网络缓存

答案:C。昇腾的矩阵计算引擎叫CUBE单元,对标英伟达Tensor Core。CPU负责串行控制,CUDA是英伟达专属说法,缓存不是计算单元。故选C。

Q3. 昇腾910C采用双die封装,这属于哪种技术路线?

单选题 · easy

  • A.3D垂直堆叠存储
  • B.Chiplet芯粒封装← 正确答案
  • C.光刻胶涂布工艺
  • D.冷焊金属连接

答案:B。910C把两颗成熟die并排放到同一基板,属于Chiplet(芯粒)路线。3D垂直堆叠更多用于HBM存储,光刻与冷焊都不是封装方案。故选B。

Q4. 大模型训练的总计算量常用6ND估算,其中系数6主要来自哪里?

单选题 · mid

  • A.前向2次加反向4次← 正确答案
  • B.使用了6种混合精度
  • C.数据做了6倍冗余备份
  • D.训练需要6轮完整迭代

答案:A。系数6≈前向传播每参数每词元约2次FLOPs,反向传播约4次(权重梯度与激活梯度),是业界通用估算基准。其余选项没有工程依据。故选A。

Q5. 以下哪些因素会影响910C训练千亿模型的实际速度?

多选题 · mid

  • A.HBM带宽← 正确答案
  • B.硬件利用率MFU← 正确答案
  • C.片间互联效率← 正确答案
  • D.显卡外观颜色

答案:ABC。HBM带宽决定喂料速度,MFU反映真实计算占比,片间互联效率影响多卡协同;外观颜色与性能毫无关系。故选ABC。

Q6. 昇腾910B的HBM容量约64GB,910C约128GB,这一升级主要解决什么问题?

单选题 · mid

  • A.降低芯片功耗
  • B.提高显示器分辨率
  • C.装下更多模型参数← 正确答案
  • D.加快CPU启动速度

答案:C。HBM是大模型参数与中间激活的“住所”,容量翻倍让单卡能装下更大模型,减少跨卡通信与显存换入换出。功耗、显示与CPU启动均与此无关。故选C。

Q7. 在训练时长公式 T=6ND/(nPU) 中,U代表什么?

单选题 · mid

  • A.输入电压
  • B.硬件利用率← 正确答案
  • C.内存带宽
  • D.参数量

答案:B。U即MFU硬件利用率,反映通信等待、显存搬运等开销之后“真正干活”的比例,典型值40%~60%。电压、带宽与参数量各有其符号。故选B。

Q8. 为什么910C的有效算力不是严格的2倍于910B?

单选题 · hard

  • A.因为芯片名称多了个字母C
  • B.双die之间通信存在损耗← 正确答案
  • C.因为FP16精度被强制降低
  • D.因为驱动补丁尚未发布

答案:B。双die合体后,片间总线引入延迟与带宽开销,使实际性能只能接近2倍而非精确2倍,即 η互联≈0.8~0.95。芯片命名、精度与驱动都不是物理原因。故选B。

Q9. 从CUDA生态迁移到昇腾CANN通常需要做哪些工作?

多选题 · hard

  • A.改写CUDA代码为Ascend C← 正确答案
  • B.重新适配自定义算子← 正确答案
  • C.调整分布式通信策略← 正确答案
  • D.更换所有服务器硬盘

答案:ABC。迁移涉及代码改写、算子适配、分布式通信策略调整,还常伴随精度对齐与性能调优;硬盘更换与软件迁移无关。故选ABC。

Q10. 关于昇腾910系列,下列说法正确的有哪些?

多选题 · hard

  • A.已能支撑千亿参数模型训练← 正确答案
  • B.软件生态仍在追赶CUDA← 正确答案
  • C.与麒麟手机芯片同属一条产品线
  • D.需通过CANN适配主流深度学习框架← 正确答案

答案:ABD。昇腾已支撑千亿大模型预训练,CANN承担框架适配,生态成熟度较CUDA仍有差距;麒麟是手机SoC,与昇腾完全不是同一产品线。故选ABD。