第二章 硬件平台选型:边缘计算设备与算力评估

做工业缺陷检测模型移植,第一步不是调模型,而是选硬件。

我见过太多团队,模型在服务器上跑得飞起,一到产线就卡成PPT。为什么?硬件没选对。这一章,咱们就把边缘计算设备、NPU与GPU的差异、算力评估方法这几个硬骨头啃下来。

2.1 主流边缘计算设备:三足鼎立

目前工业视觉领域,主流边缘设备就三家:NVIDIA Jetson、瑞芯微RK系列、算能(SOPHGO)。我三个平台都折腾过,各有脾气。

平台 代表型号 核心优势 典型场景
NVIDIA Jetson Orin NX / Xavier NX 生态成熟,CUDA/TensorRT支持好 高精度检测、多路视频
瑞芯微 RK3588 / RK3568 性价比高,NPU功耗低 单路检测、轻量模型
算能 BM1684 / SG2300 自研TPU,INT8推理效率高 安防、工业质检

我的经验:如果项目预算充足、算法团队有CUDA经验,无脑选Jetson。如果追求极致性价比、产品量大,瑞芯微是首选。算能适合对功耗敏感、且愿意花时间适配工具链的团队。

2.2 NPU与GPU的差异:别搞混了

很多人以为NPU就是低配GPU,其实不是。GPU是通用并行计算单元,NPU是专用神经网络加速器。说白了,GPU能跑图形、科学计算、AI;NPU只干AI这一件事,但干得又快又省电。

对比维度 GPU NPU
计算单元 大量CUDA Core / Stream Processor 专用MAC阵列 + 数据流控制器
精度支持 FP32/FP16/INT8 INT8/INT4为主,部分支持FP16
灵活性 高,支持任意算子 低,需算子对齐
功耗 高(15W~300W) 低(2W~15W)
工具链 成熟(TensorRT、CUDA) 碎片化(RKNN、BMNNSDK)

避坑指南:我曾经在一个项目中,把GPU上跑通的模型直接往NPU上搬,结果算子不支持,推理结果全错。后来花了整整两周重写算子替换方案。记住:NPU不是GPU的简化版,它是另一种架构。移植前一定要做算子兼容性检查。

2.3 算力评估方法:别只看TOPS

厂商都喜欢标TOPS(Tera Operations Per Second),但TOPS高不代表推理快。为什么?因为TOPS是理论峰值,实际推理速度受内存带宽、数据搬运、算子效率影响很大。

我个人习惯用“有效算力”来评估,公式很简单:

有效算力 = 模型推理帧率(FPS) × 单帧计算量(GMACs)

举个例子:

  • 设备A:标称10 TOPS,跑YOLOv5s(4.5 GMACs)只能跑30 FPS
  • 设备B:标称8 TOPS,跑同样模型能跑45 FPS

你说哪个强?设备B的有效算力更高。所以别被TOPS忽悠,拿你的模型去实际跑一跑才是王道。

2.4 算力评估四步法

我总结了一套评估流程,每次选型都这么干:

  1. 确定模型基线:在PC上用FP32跑一遍,记录FPS和精度
  2. 量化校准:转INT8,看精度损失是否在容忍范围内(一般<1%)
  3. 目标板实测:在边缘设备上跑量化后的模型,记录FPS、内存、功耗
  4. 余量评估:确保推理帧率是产线需求的1.5倍以上,留出预处理和后处理的时间

关键指标清单:

  • 推理帧率(FPS)—— 核心指标
  • 端到端延迟(ms)—— 含预处理+推理+后处理
  • 内存占用(MB)—— 模型+运行时
  • 功耗(W)—— 影响散热和稳定性
  • 精度损失(%)—— 量化前后对比

2.5 知识结构图:选型决策流程

下面这张图是我自己画的选型决策流程,每次做项目都拿出来对照一遍:

边缘设备选型决策流程 边缘设备选型决策流程 开始:确定需求 精度要求 > 99%? 是 选 Jetson Orin 否 功耗 < 10W? 是 选 瑞芯微 RK3588 否 选 算能 BM1684 实测验证:FPS/精度/功耗 提示:选型后务必用目标模型做全链路实测,理论值仅供参考

2.6 实战案例:一个真实的选型过程

去年我帮一家电子厂做PCB缺陷检测,需求是:

  • 检测速度:≥30 FPS
  • 检测精度:≥99.5%
  • 整机功耗:≤25W
  • 成本:≤3000元

我拿YOLOv8n(3.2 GMACs)在三个平台上做了实测:

平台 INT8 FPS 精度损失 功耗 价格 结论
Jetson Orin NX 62 0.3% 15W ~3500元 超预算
RK3588 45 0.5% 8W ~1200元 ✅ 推荐
算能BM1684 38 0.4% 12W ~1800元 备选

最终选择:RK3588。虽然FPS不是最高,但满足30 FPS需求,功耗最低、价格最便宜。省下的预算用来加装散热和工业相机,整体方案更均衡。

嗯,这里要注意:选型不是选最强的,而是选最合适的。你想想看,产线对稳定性要求极高,功耗低意味着发热小,发热小意味着故障率低。这个道理,吃过亏的人都懂。