第二章:硬件平台选型与对比

做嵌入式AI部署,第一步就是选硬件。这事儿我踩过不少坑,今天跟你聊聊主流芯片怎么挑。

2.1 主流嵌入式AI芯片概览

先看市面上最常见的几类芯片。我个人习惯把它们分成三档:

  • Jetson系列(NVIDIA):Orin NX、Xavier NX、TX2。带GPU,生态最成熟。
  • RK3588(瑞芯微):国产芯片,带NPU,性价比高。
  • 树莓派4/5:通用开发板,算力弱但便宜。
  • TPU(Google Coral):专门跑TensorFlow Lite的USB加速棒。
  • NPU(寒武纪、地平线):专为神经网络设计的处理器。

你想想看,选芯片就像选车——跑车快但费油,皮卡能拉货但跑不快。没有万能方案。

2.2 算力与功耗的权衡

这是最核心的矛盾。我做过一个项目,用Jetson Orin NX跑YOLOv8,算力100 TOPS,功耗却飙到25W。换成RK3588,算力只有6 TOPS,但功耗才8W。

芯片 算力(INT8) 典型功耗 能效比
Jetson Orin NX 100 TOPS 25W 4 TOPS/W
RK3588 6 TOPS 8W 0.75 TOPS/W
树莓派5 0.5 TOPS 5W 0.1 TOPS/W
Google Coral TPU 4 TOPS 2W 2 TOPS/W

关键点:别只看TOPS数字。实际部署时,模型能否充分利用硬件加速器,比峰值算力更重要。

我曾经在Jetson上跑一个轻量级模型,结果GPU利用率只有30%,功耗却一直25W。后来换成RK3588的NPU,利用率冲到85%,功耗才10W。嗯,这里要注意:算力是上限,利用率才是现实

2.3 硬件加速器简介

说白了,加速器就是帮你把神经网络算得更快的专用电路。我分三类讲:

GPU(图形处理器)

Jetson用的就是GPU。它擅长并行计算,适合大模型。但缺点也明显——功耗高,而且需要CUDA生态支持。我建议:如果你做自动驾驶、机器人这类重计算任务,选Jetson没错。

NPU(神经网络处理器)

RK3588、地平线J5都带NPU。它专门为卷积、矩阵乘法设计。我测试过,同样跑MobileNetV3,NPU比CPU快10倍,功耗只有1/5。但坑也不少——各家NPU的指令集不通用,模型转换时经常报错。

避坑指南:我曾经在RK3588上部署一个Pytorch模型,NPU死活不认。后来发现必须用RKNN工具链转格式,而且有些算子不支持。所以选NPU前,先查清楚它支持哪些算子。

DSP(数字信号处理器)

这个比较冷门。DSP原本做音频、图像处理,现在也被用来跑轻量级AI。比如树莓派的VideoCore GPU就带DSP功能。但说实话,DSP算力有限,跑个语音唤醒还行,跑视觉模型就吃力了。

2.4 选型实战建议

我根据项目经验,给你几个参考:

  • 预算充足、追求性能:Jetson Orin NX。适合工业检测、自动驾驶。
  • 国产化、性价比:RK3588。适合智能家居、边缘盒子。
  • 原型验证、学习:树莓派5 + Coral TPU。成本低,上手快。
  • 超低功耗、特定场景:地平线J3或寒武纪MLU220。适合电池供电设备。

警告:别被厂商的TOPS数字忽悠。我见过一个项目,标称20 TOPS的NPU,实际跑ResNet50只有5 TOPS。一定要拿自己的模型实测。

2.5 我的个人经验总结

做了这么多年嵌入式AI,我最大的体会是:没有最好的芯片,只有最合适的方案。你想想看,一个智能门锁需要100 TOPS吗?不需要。一个自动驾驶系统能用6 TOPS吗?也不行。

我建议你按这个步骤选型:

  1. 先确定模型大小(轻量级还是重量级)
  2. 再算功耗预算(电池供电还是插电)
  3. 最后看生态(工具链、社区支持)

嗯,今天就聊到这儿。下一章我们讲模型量化,那是部署的关键一步。