深夜的物流调度中心灯火通明。凌晨三点,一排制冷货车正在装货——有的车满载生鲜直达冷链仓,有的车专跑同城特快线路,还有的车背着最先进的温控系统与全程定位追踪。每一辆车都在用不同的方式完成同一件事:把“包裹”从这个城市送到那个城市。 国产推理加速卡干的活,和这些货车一模一样。AI 模型训练出来之后,就像中央厨房做好的菜品,需要一张“运输车队”把它们送到千家万户——这趟运输就是推理。寒武纪像一辆覆盖全城、线路密集的主力货运车,燢原像一辆死磕时效与装载率的特快专线车,昇腾则像一辆自带中央调度系统的重型车队。选购哪辆车,取决于你的货物(推理任务)要送到哪、多久必须到、每趟油耗多少、以及车队能不能和你的物流系统(软件生态)无缝对接。 这篇文章就带你当一回“物流采购经理”,用吞吐量、延迟、能效比、生态支持这四个指标,给国产推理加速卡做一次横向体检。

岗位关联

国产 AI 推理正在从实验室走向生产线,理解寒武纪、燢原、昇腾三大方案的核心差异与选型逻辑,是每一位 AI 工程化从业者做硬件决策时绕不开的基本功。

目录
  1. 可视化演示
  2. 推理卡基本概念
  3. 寒武纪方案解析
  4. 燢原方案解析
  5. 核心指标对比
  6. 基准测试解读
  7. 生态支持分析
  8. 选型决策建议
  9. 国产芯片趋势
  10. AI 应用场景
  11. Python 演示
  12. 常见误区
  13. 面试题

可视化演示

动态展示寒武纪/燧原/昇腾三厂商多维度雷达对比、MLUarch矩阵引擎架构、云端vs边缘部署选型、以及ONNX到原生格式的模型部署流水线四个核心视角。

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

推理卡基本概念

想象一座大型生鲜配送中心:中央厨房做好了成千上万份净菜、熟食和半成品,下一步要靠车队把它们送到各个便利店、食堂和千家万户。模型训练就像中央厨房——不厌其烦地试菜、调配方、改进工艺,追求的是“把菜做对”;模型推理则是每日配送——时间紧、任务重、线路多,追求的是“把做好的菜以最低成本最快送到”。AI 领域里这两件事对硬件的要求截然不同:训练要暴力计算的蛮力,推理要精细调度的巧劲。

推理加速卡,就是为“配送”这一环设计的专业车队。物流经理考核车队,会看四个数字:每小时能发出多少车(吞吐量)、单个包裹多久送达(延迟)、每升油能送多少货(能效比)、车队能否接入自家仓储与快递柜系统(生态支持)。这四个维度,恰恰是国产推理加速卡横向对比的标准框架。

吞吐量是最直观的指标,它衡量加速卡在单位时间内能完成多少个推理请求:

回到生鲜配送的比喻:吞吐量就是“每小时发车数”,它不代表某一份订单快不快,而是代表整个配送网络的总运力。搞清楚吞吐量,车队对比的“总盘子”就立起来了:寒武纪、燢原、昇腾谁家的运力更强,要用同一张发货单来测。

T=NttotalT = \dfrac{N}{t_{\text{total}}}
吞吐量 = 总完成的推理任务数 ÷ 总耗时,数值越大说明单位时间内能服务更多请求,是衡量车队“发车规模”的核心数字。
  1. 任务总数 N打入加速卡的一批推理请求数量,比如同时识别 1 万张图片。
    NN
  2. 总耗时从这批任务开始到全部完成所消耗的时间,通常以秒为单位。
    ttotalt_{\text{total}}
  3. 二者相除得到的商就是每秒完成的任务数。吞吐量越高,同一时间能服务的用户就越多。
    Nttotal\dfrac{N}{t_{\text{total}}}

寒武纪方案解析

如果说有一支车队的特点是“线路全、车型多、跟各大仓储平台都熟”,那寒武纪就是这支车队。寒武纪的推理加速卡走的是思元(MLU)产品线,从嵌入式的思元 220,到适用于边缘计算的思元 370-S4,再到数据中心的思元 370 系列,几乎覆盖了“最后一公里”到“全国干线”的全部配送网络。它像菜鸟物流——不挑货,云边端都能送。

寒武纪在架构上有个显著特点:片上大缓存设计。普通 GPU 像车队跑一趟长途要频繁进服务区加油(访问外部显存),寒武纪则在芯片内部建了超大的“移动油罐”——把常用数据(权重、中间特征)直接存在片内。推理时数据搬运距离短,能耗低,速度快,特别适合对功耗敏感的推理场景。这也就是为什么在能效比榜单上,寒武纪常常是前三名的常客。

评估一张加速卡的账面算力,有一个通用公式——标称算力由核心数量、运行频率和单周期操作数共同决定:

寒武纪思元 370 的典型 INT8 标称算力在 256 TOPS 量级,配合片上大缓存,跑 CV 类视觉模型时“满载率”很高。回到车队比喻:寒武纪是“大车队 + 移动油罐”的组合,它的强项不在于某一辆车的极速,而在于整个车队在干线(云端)和支线(边缘)上都能稳定出车,且油耗(功耗)控制得相当出色。

TOPS=C×f×O1012\text{TOPS} = \dfrac{C \times f \times O}{10^{12}}
标称算力(每秒万亿次操作)= 核心数 × 频率 × 每周期操作数 ÷ 万亿。它衡量的是车队“理论满载总马力”,不代表实际跑出来的速度。
  1. 核心数 C芯片上集成的计算核心总数,相当于车队拥有的车辆数。
    CC
  2. 运行频率 f每个核心每秒运行的时钟周期数,相当于每辆车的引擎转速。
    ff
  3. 单周期操作数 O每个时钟周期内一次能执行的运算次数,可理解为每辆车的装载效率。
    OO
  4. 除以一万亿把每秒数十万亿次的操作数换算为 TOPS 单位,方便口头描述。
    C×f×O1012\dfrac{C \times f \times O}{10^{12}}

燢原方案解析

配送行业里还有另一种车队:车型不多,但每一辆都是“高配定制款”,专门跑生鲜特快专线,时效是它的生命线。燢原(Enflame)的云燧系列就是这样的队伍。作为一家专注 AI 训练与推理双轮驱动的国产芯片公司,燢原的产品线不像寒武纪那样铺得满,而是集中火力在高端市场——云燧 T20 这类面向数据中心的加速卡,追求的是“单趟拉得更多、跑得更快”。

燢原云燧在架构上最突出的标签是 HBM 高带宽存储。普通车队跑长途要把货从仓库搬到车场再装车,带宽就是“搬运货物的传送带速度”。HBM 把传送带加宽了数倍,让数据在“内存 ↔ 计算核心”之间快速流动,这对大模型推理尤其关键——因为大模型的权重动辄几十 GB,每一层计算都要反复读取权重,带宽不够,核心再快也只能干等着。

衡量一张加速卡相对 CPU 的“提速效果”,业界常用加速比这个指标:

以云燧 T20 为参考,它在典型大模型推理场景下的加速比可达 CPU 方案的数十倍以上,高带宽存储让它在应对长序列、大 batch 的高负载场景时格外游刃有余。用生鲜物流来理解:燢原就是那支“专跑冷链特快”的车队,运力集中、技术先进,适合对时效和单趟装载量要求极高的干线任务——但它的网点(生态)暂时没有寒武纪和昇腾铺得那么广。

R=tcputaccelR = \dfrac{t_{\text{cpu}}}{t_{\text{accel}}}
加速比 = CPU 运行耗时 ÷ 加速卡运行耗时。它反映的是“用了专用车队之后,比原来跑腿快了多少倍”。
  1. 通用 CPU 耗时同一推理任务在纯 CPU 上运行所花的时间,作为基准耗时。
    tcput_{\text{cpu}}
  2. 加速卡耗时同一任务在 AI 加速卡上运行所花的时间。
    taccelt_{\text{accel}}
  3. 求比值 R两者相除。比值越大,说明加速卡带来的速度提升越明显。
    tcputaccel\dfrac{t_{\text{cpu}}}{t_{\text{accel}}}

核心指标对比

三支车队的底细摸清了,接下来把它们拉到同一个配货站,装载同样的货物、跑同样的路线,看谁跑得又快又省——这正是“横向对比”的意义。我们选取三个维度:推理吞吐量(单位时间完成任务数)、响应延迟(单个请求的等待时间)、能效比(每瓦功耗完成的任务数)。

在典型视觉模型推理基准下,三家的归一化表现大致是:昇腾吞吐量最猛(约 100%),寒武纪紧随其后(约 86%),燢原约 78%;能效比上寒武纪反超领先(约 92%),燢原约 85%,昇腾约 80%;而生态成熟度则是昇腾(约 95%)>寒武纪(约 78%)>燢原(约 68%)。没有一支车队全面领先,这正是选型必须“按需下单”的原因。

能效比是数据中心和边缘场景最被低估的指标,它的定义非常直观——每一瓦电换来多少吞吐:

在真实的推理集群里,电费是逐年累积的巨额开销。三支车队里,寒武纪主打“省油跑量”,适合 7×24 小时不间断运行的边缘盒子;燢原和昇腾则偏向“大力出奇迹”,适合在机房电费预算充足的场景冲刺峰值吞吐。物流经理的记分牌告诉我们:没有全能的冠军,只有最匹配的车型。

E=TPE = \dfrac{T}{P}
能效比 = 推理吞吐量 ÷ 运行功耗。它回答“每升油能跑多少趟活”这个问题,功耗墙往往比算力墙更早卡住脖子。
  1. 吞吐量 T加速卡在单位时间内完成的推理任务数,分子是“干的活”。
    TT
  2. 功耗 P加速卡满负荷运行时的功率,单位是瓦(W),分母是“烧的油”。
    PP
  3. 二者相除得到每瓦功耗对应的推理能力。能效比越高,长期运营的电费成本就越低。
    TP\dfrac{T}{P}

基准测试解读

车队吹得再好,不如实际跑一趟货。业界通行的做法是拿经典模型当“标准货箱”,在统一的环境下测试各家加速卡的实际表现。常见基准模型有三类:ResNet50(计算机视觉的“老牌货箱”)、BERT(自然语言理解的“标准集装箱”)、GPT 类生成式模型(近年最热门的“冷藏大货箱”)。

跑完这三条线路,各家车队的优劣势就很清晰了。ResNet50 这类卷积网络对芯片的卷积算子优化和片上缓存敏感,寒武纪凭借大缓存和成熟算子库,吞吐量表现亮眼;BERT 这类 Transformer 模型对内存带宽和矩阵乘法调度都很敏感,燢原的 HBM 高带宽在这里发挥价值;而 GPT 类生成式模型依赖反复读取权重和长序列的 KV Cache,对带宽和显存容量的要求同步拉满,昇腾的整机方案和大算子生态更能扛住压力。

实测吞吐距离理论峰值有多远,业界用一个“利用率”指标来衡量:

从基准测试的视角往回看:三家车队各有“主战场”——寒武纪在 CV 视觉线路上装载率最高,燢原在带宽饥饿型模型里后劲足,昇腾则在大模型综合负载上更能打。选购时先用目标模型做一次试跑,看“利用率”而非只看“账面马力”,才能避免花了大价钱买回一辆用不上的重型卡车。

U=TactualTOPSpeakU = \dfrac{T_{\text{actual}}}{\text{TOPS}_{\text{peak}}}
利用率 = 实测吞吐 ÷ 理论峰值算力。它揭示“理论马力”中有多少真正转化成了“实际奔跑”的速度。
  1. 实测吞吐在真实模型推理中测得的每秒任务数,是实际跑出来的成绩。
    TactualT_{\text{actual}}
  2. 理论峰值算力芯片规格书上标称的 TOPS 值,是理想条件下的极限马力。
    TOPSpeak\text{TOPS}_{\text{peak}}
  3. 相除得利用率比值越接近 1,说明芯片架构与场景越匹配。很多卡账面 TOPS 很高,实测利用率却不足 30%。
    TactualTOPSpeak\dfrac{T_{\text{actual}}}{\text{TOPS}_{\text{peak}}}

生态支持分析

一辆车再好,如果接不上物流公司的仓储系统、快递柜和订单平台,也只能停在车场吃灰。生态就是加速卡的“接单系统”。国产加速卡的生态通常分为三层:最底层是驱动与硬件抽象层(让操作系统认识这张卡),中间是算子库与编译器层(把 PyTorch 等框架的函数翻译成芯片能执行的指令),最上层是框架适配层(让模型代码跑起来不用大改)。

寒武纪提供 NeuWare 工具链,燢原提供 RAT(RainBuilder AltTools)工具链,昇腾则有 CANN 异构计算架构。三家的工具链成熟度差异,直接决定了开发者的“上手痛苦指数”。目前主流的 PyTorch 推理模型,昇腾的适配最顺滑,寒武纪的适配在快速追赶,燢原因起步较晚,部分高阶算子仍需手动改写。算子覆盖度是关键中的关键——模型里只要有一个算子不支持,整条推理链路就可能被迫退回 CPU 执行,性能断崖式下跌。

框架适配带来的性能损耗,可以用这个公式量化:

回到车队的例子:昇腾是“自带中央调度系统”的车队,接单、排线、装货全部自动化;寒武纪的调度系统覆盖广但部分插件还要手工配置;燢原的调度系统接口新,需要开发者多花一些磨合时间。评估加速卡时,生态成熟度的权重应当等同于硬件算力——因为一辆接不上订单系统的车,马力再大也是摆设。

η=1−ToptTbase\eta = 1 - \dfrac{T_{\text{opt}}}{T_{\text{base}}}
性能损耗率 = 1 − 优化后吞吐 ÷ 基准吞吐。它衡量“软硬件没有彻底打通”时白白丢掉的性能。
  1. 基准吞吐模型在原生框架(如标准 PyTorch)下直接运行的吞吐量,当作 100% 参照。
    TbaseT_{\text{base}}
  2. 适配后吞吐经过厂商算子库优化后跑出的吞吐量。
    ToptT_{\text{opt}}
  3. 用 1 减去比值得到的差值就是性能损耗率。损耗率越高,说明软件栈拖后腿越严重。
    1−ToptTbase1 - \dfrac{T_{\text{opt}}}{T_{\text{base}}}

选型决策建议

物流经理终于要拍板了。手里三份方案:寒武纪车队线路广、油耗低、接单系统齐全;燢原车队车况豪华、专线速度快、但网点少;昇腾车队调度系统最强、干线运力大、但租赁成本高。选哪一支?答案不是“最贵的”或“最快的”,而是“最匹配自己业务的”。

边缘场景(安防摄像头、工业质检盒、车路协同终端)的典型约束是:功耗预算紧、散热条件差、单机部署量大。这类场景优先选能效比高的卡——寒武纪思元 370-S4 这类低功耗型号往往是首选。数据中心场景(云端大模型推理、批量 OCR、推荐系统)的约束则是:吞吐要求高、需要与现有框架无缝集成、且要支撑未来模型迭代。这类场景更看重生态成熟度和 HBM 带宽——昇腾 910 系列和燢原云燧 T20 进入决赛圈。

但只对比硬件价格是不够的。一台加速卡的真实开销,要算上几年的电费、机房空间、散热成本和迁移开发成本。业界把这一切打包为“总拥有成本(TCO)”:

从 TCO 视角看,一张便宜但功耗高、需要大量二次开发的卡,往往比一张贵但即插即用、省电省心的卡更费钱。选型的本质,是把“场景约束”翻译成“指标权重”:边缘场景权重排序为能效比>价格>生态;数据中心场景权重排序为吞吐量>生态>延迟稳定性;而无论哪种场景,TCO 都是最终拍板的那个数字。

Cper=TCONtotalC_{\text{per}} = \dfrac{TCO}{N_{\text{total}}}
单次推理成本 = 总拥有成本 ÷ 全生命周期推理总次数。它把买车、养车、司机的钱全部平摊到每一单配送上。
  1. 总拥有成本硬件采购价 + 数年电费 + 散热与机房成本 + 迁移开发人力成本的总和。
    TCO\text{TCO}
  2. 推理总次数这张卡在整个服役期内预计要完成的推理请求总数。
    NtotalN_{\text{total}}
  3. 二者相除得到每完成一次推理要付出的平均成本,这是对比方案最公平的标尺。
    TCONtotal\dfrac{TCO}{N_{\text{total}}}

国产芯片趋势

国产推理加速卡这场“车队军备赛”远未结束。目之所及,昇腾在互联网大厂的大规模部署中建立了事实标准,寒武纪在云边端全面开花,燢原则沿着“高端训练 + 高时效推理”的差异化路线深耕。三支车队互相竞争,也互相印证了一条产业规律:单一芯片无法通吃所有场景,生态协同才是护城河。

从技术演进看,国产加速卡的能效比正在经历快速爬坡期。前几年一张卡跑出 200 TOPS 也许要 300W 功耗,如今差不多的算力可能只需一半功耗。单位功耗的推理能力提升,正以接近“每 1.5 到 2 年翻一番”的速度推进。衡量新一代产品相对上一代能效的进步幅度,可以用能效提升倍数:

面向未来,国产推理加速卡的竞争将从“拼 TOPS 数字”转向“拼综合体验”——软件栈好不好用、算子覆盖有多全、大模型生态适配有多快,这些软实力将成为车队决胜的核心筹码。回到开头的生鲜配送:今天的国产车队已经能从中央厨房(训练)把货稳稳送到千家万户(推理),而下半场比的是谁的运输网络更智能、更省油、更懂客户的线路。

S=EnewEoldS = \dfrac{E_{\text{new}}}{E_{\text{old}}}
能效提升倍数 = 新一代能效比 ÷ 上一代能效比。它量化“同一度电,如今能比过去多跑多少活”。
  1. 新一代能效比最新的加速卡在基准测试中测得的能效指标(吞吐 ÷ 功耗)。
    EnewE_{\text{new}}
  2. 上一代能效比前一代产品的同口径能效指标,作为起点参照。
    EoldE_{\text{old}}
  3. 相除得倍数例如 S = 2 意味着新一代产品每一瓦电干的活是上一代的两倍。
    EnewEold\dfrac{E_{\text{new}}}{E_{\text{old}}}

AI 应用场景

智慧安防:边缘视频结构化分析

阶段:模型推理部署(边缘侧)

解决的问题:传统安防方案依赖服务器集中处理视频流,带宽成本高、响应延迟大。寒武纪思元边缘卡具备高能效比和低功耗优势,可直接嵌入摄像头或边缘盒子,就近完成人脸检测、车辆识别和结构化分析,把“每趟运输”的油耗降到最低。

具体案例:某智慧园区部署 200 路摄像头,每路视频流接入一台搭载思元 220 的边缘计算盒子,实时完成人员闯入检测与车牌识别。相比纯 CPU 方案,单路功耗下降 60%,告警延迟从 800 毫秒压到 120 毫秒。

大模型云端推理服务

阶段:模型推理部署(数据中心侧)

解决的问题:GPT 类生成式大模型推理需要反复读取海量权重,对内存带宽和高吞吐提出极高要求。燢原云燧 T20 借助 HBM 高带宽,配合昇腾 910 的大算子生态,能在数据中心以高吞吐支撑对话机器人、文档摘要等在线服务。

具体案例:某互联网公司的智能客服系统基于 70 亿参数大模型,使用燢原云燧 T20 集群承载高峰时段每秒 2000 次对话请求,P99 延迟控制在 800 毫秒以内,相比原 GPU 方案单次推理成本下降约 35%。

工业质检:产线实时缺陷检测

阶段:模型推理部署(边缘与近端协同)

解决的问题:工业产线质检要求毫秒级反馈和高可靠性,同时产线环境对设备功耗和体积敏感。通过对比国产加速卡的能效比与延迟指标,选择寒武纪边缘卡完成初步筛选,燢原/昇腾卡在集中复检环节做大吞吐复核,形成两级推理架构。

具体案例:某 3C 电子工厂在贴片产线上部署寒武纪边缘推理卡,实现每秒 30 帧的 PCB 缺陷检测,误检率低于 0.5%;复检集群使用昇腾 910 集中处理高分辨率影像,整体质检效率提升 3 倍。

Python 演示

python56 行
"""国产推理加速卡对比模拟:基于吞吐量、延迟与能效比做选型评估"""import random class Accelerator:    def __init__(self, name, model_times, power, eco_score):        self.name = name        self.model_times = model_times  # {模型名: 每批耗时(秒)}        self.power = power              # 满载功耗(瓦)        self.eco_score = eco_score      # 生态成熟度评分(0-1)     def throughput(self, model, batch=32):        t = self.model_times[model] / batch        return round(1.0 / t, 1)  # 每秒完成的任务数     def latency(self, model, p99_ratio=1.6):        t = self.model_times[model] / 32        return round(t * p99_ratio, 3)  # 单次请求 P99 延迟(秒)     def energy_efficiency(self, model, batch=32):        thr = self.throughput(model, batch)        return round(thr / (self.power / 1000.0), 2)  # 每瓦每秒任务数     def cost_per_inference(self, model, price, years=3, batches=1000000):        total_power_cost = self.power / 1000.0 * 24 * 365 * years * 0.6        total_cost = price + total_power_cost        total_infs = batches * years * 365 * (self.throughput(model) * 60 * 60 / 24)        return round(total_cost / total_infs, 6)  # 单次推理成本(元) def run_benchmark():    random.seed(42)    cards = [        Accelerator("寒武纪思元370", {"ResNet50": 32/410, "BERT": 32/180, "GPT-2": 32/60}, 250, 0.78),        Accelerator("燢原云燧T20", {"ResNet50": 32/370, "BERT": 32/240, "GPT-2": 32/110}, 300, 0.66),        Accelerator("昇腾910B",  {"ResNet50": 32/520, "BERT": 32/260, "GPT-2": 32/145}, 310, 0.92)    ]    models = ["ResNet50", "BERT", "GPT-2"]    print("=" * 68)    print("模型基准:  ResNet50(视觉)  BERT(语言)  GPT-2(生成)")    print("=" * 68)    for card in cards:        thr_line = "  ".join(            str(card.throughput(m)) + " img/s" for m in models)        lat_line = "  ".join(            str(card.latency(m)) + " s" for m in models)        eff_line = "  ".join(            str(card.energy_efficiency(m)) + " k/s/W" for m in models)        print(f"[{card.name}] 功耗={card.power}W 生态={card.eco_score}")        print(f"  吞吐: {thr_line}")        print(f"  P99延迟: {lat_line}")        print(f"  能效比: {eff_line}")    print("=" * 68)    print("选型建议: 边缘场景优先寒武纪(能效比+低功耗),"          "大模型场景优先昇腾/燢原(带宽+生态)") if __name__ == "__main__":    run_benchmark()
目的:模拟寒武纪、燢原、昇腾三款加速卡在三种典型模型上的推理基准测试,输出吞吐量、P99 延迟和能效比对比,辅助硬件选型决策。
  1. class Accelerator:定义加速卡类,把每张卡的模型耗时、功耗、生态评分打包成一个对象,方便统一评测。
  2. self.model_times = model_times存储每个模型每批 32 个样本的平均耗时,作为后续计算的原始数据。
  3. t = self.model_times[model] / batch把“每批耗时”摊到单个样本,算出单样本推理时间,这是延迟和吞吐的共同基础。
  4. return round(1.0 / t, 1)单样本耗时的倒数就是每秒吞吐量,代表“每小时能发多少车”。
  5. return round(t * p99_ratio, 3)用 1.6 倍作为 P99 延迟的模拟系数,反映尾部延迟对用户体验的影响。
  6. thr / (self.power / 1000.0)吞吐量除以千瓦功耗,得到“每瓦每秒任务数”,即能效比。
  7. total_power_cost = self.power / 1000.0 * 24 * 365 * years * 0.6计算三年的电费开支,0.6 元/度是典型工业电价。
  8. random.seed(42)固定随机种子,保证对比实验可复现,符合基准测试的严谨性要求。
  9. for card in cards:循环遍历三张卡逐一打印评测数据,形成横向对比表。
  10. if __name__ == "__main__":脚本入口,保证代码既可被导入也可以直接运行。

常见误区

误区我看到寒武纪标称 256 TOPS,燢原 300 TOPS,昇腾 320 TOPS,那昇腾跑任何模型一定最快,我直接买最高 TOPS 的卡就行了。

正解TOPS 是理论峰值算力,相当于车队“满载总马力”,但实际能跑多快取决于利用率。一张卡在 ResNet50 上利用率可能 60%,换到 BERT 上可能只剩 25%。带宽、缓存、算子优化都会让实际吞吐远低于峰值。就像一辆马力 500 匹的卡车,道路拥堵时还没小面包车跑得快。选型必须用目标模型实测,而不是比规格书的数字。

为何常见:厂商宣传大多突出峰值算力,而实测吞吐需要自己搭建环境测,门槛较高,于是大家习惯用账面数字替代真实性能。

误区吞吐量 500 img/s 的卡,跑单张图片应该比吞吐量 200 img/s 的卡快 2.5 倍,两张卡的响应体验应该差距很大。

正解吞吐量是“整体运力”,延迟是“单件时效”,两者是不同维度的指标。为了提升吞吐,推理服务通常会增大批处理(batch),一批任务排队处理会拉高单个请求的等待时间。所以可能出现吞吐量很高但 P99 延迟反而变长的现象。就像物流公司为了提高发车效率把车装满再走,单个包裹的等待时间反而变长了。真实业务里,在线交互场景要压延迟,离线批处理场景才冲吞吐。

为何常见:直觉上“单位时间处理多”与“单个处理快”容易混淆,只有当任务完全并行无排队时两者才近似一致。

误区国产加速卡不都支持 PyTorch 吗?安装驱动后模型代码原样跑起来,硬件性能就完全发挥出来了,生态没什么好比的。

正解驱动只是最底层,真正决定性能的是算子库和编译器。同一个 PyTorch 模型,在昇腾 CANN 上可能优化到跑满 90% 利用率,在生态起步较晚的平台上可能因为几个算子不支持而退回 CPU 执行,整卡利用率掉到 20%。生态成熟度就像物流车队的接单系统,车再好,系统不认你的货单也白搭。

为何常见:深度学习框架层做了大量适配工作,让“能跑”变得很容易,但“能跑得快”的深层优化差距隐藏在算子层面,非资深开发者难以直接感知。

误区A 卡便宜 5000 元,B 卡贵 8000 元但更省电,肯定是选 A 卡,毕竟省下的钱是实打实到手的。

正解一张卡三年服役期的总成本包含硬件价、电费、散热、机房空间和迁移开发人力。功耗 300W 和 250W 的卡在 1000 张规模集群下,三年电费差异可达数十万元级。就像买车时不能只看车价,还要看油耗、保养和保险。正确的做法是算 TCO,再除以全生命周期推理总次数,得到“单次推理成本”来对比。

为何常见:硬件采购价是显性成本,电费和维护是隐性成本,人在做决策时容易对看得见的数字敏感,对需要计算的长期成本麻木。

面试题

Q1. 推理场景中“吞吐量”的标准含义是什么?

单选题 · easy

  • A.单次推理请求的响应时间
  • B.单位时间内完成的推理任务数← 正确答案
  • C.芯片理论峰值算力的大小
  • D.模型参数总量的多少

答案:B。吞吐量用 T = N / t_total 衡量单位时间完成的任务数,类似车队每小时发车数。A 是延迟,C 是 TOPS,D 是模型规模,三者与吞吐量都不是同一维度。

Q2. 能效比公式 E = T / P 中,P 代表什么?

单选题 · easy

  • A.处理器核心总数
  • B.芯片运行的功耗瓦数← 正确答案
  • C.推理时的批处理大小
  • D.模型的精度百分比

答案:B。能效比 = 吞吐量 ÷ 功耗,P 是功率(瓦)。它衡量“每瓦电完成多少推理任务”,就像每升油跑多少公里。核心数和批大小影响 T 但不直接出现在能效比公式中。

Q3. 以下哪家厂商的产品系列叫“思元”?

单选题 · easy

  • A.燢原科技
  • B.华为昇腾
  • C.寒武纪科技← 正确答案
  • D.海光信息

答案:C。思元(MLU)是寒武纪的 AI 加速卡产品线,覆盖云、边、端。燢原对应云燧系列,华为对应昇腾系列。这是国产加速卡最基本的代号辨识题。

Q4. 燢原云燧 T20 在架构上最突出的优势是什么?

单选题 · mid

  • A.配备高带宽的 HBM 存储← 正确答案
  • B.纯 CPU 架构通用计算强
  • C.依赖单核超高频的设计
  • D.完全不需要片上缓存

答案:A。云燧 T20 的核心卖点是 HBM 高带宽存储,适合大模型权重反复读取的场景,类似加宽传送带。它并非 CPU 架构,也不靠单核高频,且同样需要缓存配合。

Q5. 为什么增大批处理能提升吞吐量却可能让延迟变高?

单选题 · mid

  • A.排队等待时间拉长响应变慢← 正确答案
  • B.芯片算力因此大幅下降
  • C.模型推理精度会降低很多
  • D.存储带宽反而越来越不足

答案:A。批处理把多个请求打包一起算,整体吞吐上升,但后来的请求要排队等前面批次算完,单请求等待时间变长,类似装满货再发车会提高单件等待时间。算力没有下降,精度不受影响,带宽是影响因素但不是直接原因。

Q6. 实测吞吐远低于标称 TOPS,最主要的原因是什么?

单选题 · hard

  • A.实际算子的利用率达不到峰值← 正确答案
  • B.芯片自身的功耗实在太高了
  • C.显存容量太小装不下模型
  • D.驱动没有安装最新版本

答案:A。标称 TOPS 是理想条件下所有计算单元满载的峰值,真实推理中数据搬运、算子调度、缓存命中率都会拖累效率,利用率常有 30%-60% 的折扣。功耗高是结果不是原因,显存不足对应另一类问题,驱动版本影响相对有限。

Q7. 以下哪些属于国产推理加速卡的软件生态要素?

多选题 · mid

  • A.驱动与底层运行库← 正确答案
  • B.深度学习框架适配层← 正确答案
  • C.算子库与编译器工具链← 正确答案
  • D.芯片核心的主频高低

答案:ABC。软件生态包括驱动层(A)、框架适配层(B)、算子与编译器层(C),三者共同决定模型能否高效运行。核心主频是硬件规格,不属于软件生态范畴。框架适配损耗可用 η = 1 − T_opt/T_base 量化。

Q8. 边缘端选择推理加速卡时,优先关注哪些指标?

多选题 · mid

  • A.能效比是否足够出色← 正确答案
  • B.单卡价格是否足够低← 正确答案
  • C.体积是否适配机壳散热← 正确答案
  • D.标称峰值是否最大

答案:ABC。边缘场景受功耗、成本、物理空间约束,能效比、价格和体积散热是核心决策因素。标称峰值大不代表实际利用率高,且高算力往往伴随高功耗,反而违背边缘场景初衷。

Q9. 数据中心做垂直领域大模型推理选型,关键考量通常有哪些?

多选题 · hard

  • A.P99 延迟是否满足在线体验← 正确答案
  • B.HBM 带宽能否支撑权重读取← 正确答案
  • C.批处理吞吐能否撑住峰值← 正确答案
  • D.开发板数量是否足够罗列

答案:ABC。数据中心推理集群要同时兼顾在线延迟(A)、大模型权重读取带宽(B)和峰值吞吐(C)。开发板数量与实际业务无直接关系。燢原的 HBM 方案、昇腾的大算子生态正是针对这些考量展开竞争的。

Q10. 昇腾在国产加速卡生态中扮演的核心角色是什么?

单选题 · easy

  • A.作为行业标杆的参照对比系← 正确答案
  • B.只做软件框架不做硬件芯片
  • C.主要生产网络交换机的厂商
  • D.存储芯片领域的头部玩家

答案:A。昇腾(Ascend)是华为的 AI 加速卡产品,凭借盘古大模型自有生态和大规模部署经验,成为国产加速卡事实上的行业参照系。它有完整硬件和 CANN 软件栈,不是纯软件公司,也不做网络交换机和存储主业。