第4章:目标硬件平台选型与评估
做嵌入式AI部署,第一步就是选板子。
说实话,我见过太多人一上来就买最贵的开发板,结果发现算力过剩、功耗压不住,最后项目烂尾。也见过有人图便宜选了性能不够的板子,模型跑起来卡成PPT。
这一章,我就把市面上三款主流平台——RK3588、Jetson系列、树莓派5——掰开揉碎讲清楚。顺便聊聊我的选型思路。
4.1 三款主流平台横向对比
先看一张我整理的对比表。这些数据来自我实际测试和官方文档,不是网上随便抄的。
| 项目 | RK3588 | Jetson Orin NX | 树莓派5 |
|---|---|---|---|
| AI算力 | 6 TOPS (NPU) | 70 TOPS (GPU) | 0.5 TOPS (CPU) |
| CPU | 4×A76 + 4×A55 | 8×Cortex-A78AE | 4×Cortex-A76 |
| 内存 | 8/16/32GB LPDDR4 | 8/16GB LPDDR5 | 4/8GB LPDDR4X |
| 存储 | eMMC + NVMe | eMMC + NVMe | microSD + NVMe |
| 功耗 | 8-15W | 10-25W | 5-10W |
| 价格 | ¥800-1500 | ¥3000-6000 | ¥400-800 |
| Ollama兼容性 | 需手动编译 | 官方支持 | 需精简模型 |
嗯,这里要注意:TOPS只是理论峰值。实际跑模型时,内存带宽和算子优化才是瓶颈。我在项目里遇到过RK3588标称6 TOPS,但跑7B模型时实际吞吐只有2-3 TOPS——因为NPU的算子库不够全。
4.2 算力、内存与存储需求分析
选型不能只看芯片型号。你得先搞清楚:你的模型到底需要多少资源?
4.2.1 算力需求
我个人习惯用这个公式估算:
所需算力(TOPS) ≈ 模型参数量(B) × 2 × 目标帧率(FPS) / 1000
举个例子:
- 跑一个7B的Llama模型,目标10 FPS → 需要 7×2×10/1000 = 0.14 TOPS?
- 等等,这不对。因为这是纯推理的理论值,实际还要考虑KV Cache、注意力计算等开销。
- 更靠谱的经验是:7B模型在CPU上跑,大概需要2-4 TOPS的有效算力。
我曾经在树莓派5上试过跑7B模型,结果一个token要等3秒。说白了,树莓派5只适合跑1.5B以下的模型。
4.2.2 内存需求
内存是硬门槛。模型加载时,内存占用 ≈ 参数量 × 精度系数。
| 精度 | 系数 | 7B模型占用 |
|---|---|---|
| FP32 | 4字节 | 28GB |
| FP16 | 2字节 | 14GB |
| INT8 | 1字节 | 7GB |
| INT4 | 0.5字节 | 3.5GB |
你看,7B模型用INT4量化后,3.5GB就能装下。但RK3588的NPU只支持INT8,所以至少需要7GB内存——这就是为什么我建议选16GB版本。
避坑提醒: 我曾经买过8GB的RK3588板子,跑7B模型时系统直接OOM。后来换成16GB版本,才勉强跑起来。内存这东西,宁多勿少。
4.2.3 存储需求
Ollama的模型文件都很大。一个7B模型大概4-7GB,如果量化后也有2-3GB。你想想看,如果同时装3-5个模型,存储空间很快就吃完了。
我的建议:
- 系统盘:至少64GB eMMC或SD卡
- 模型盘:至少256GB NVMe SSD
- 千万别把模型放SD卡上——IO速度会拖死推理性能
4.3 我的选型建议
说了这么多,到底怎么选?我按场景给你分个类:
场景一:学习入门、原型验证
推荐:树莓派5(8GB版)
- 便宜,坏了不心疼
- 社区资源丰富,遇到问题好查
- 适合跑1.5B以下的小模型
- 缺点:跑不了大模型,只能玩个概念
场景二:工业级部署、中等模型
推荐:RK3588(16GB版)
- 性价比之王,800块能买到16GB内存
- NPU跑INT8模型效率不错
- 功耗低,适合边缘设备
- 缺点:Ollama需要自己编译,算子库不全
场景三:高性能推理、多模型并发
推荐:Jetson Orin NX(16GB版)
- 算力碾压另外两款
- 官方支持Ollama,开箱即用
- 适合跑7B-13B模型
- 缺点:贵,功耗高,散热麻烦
我个人最常用的组合:
开发阶段用树莓派5快速验证,部署阶段用RK3588做量产。Jetson只用在客户明确要求高算力的场景。这样成本能省下一大半。
4.4 本章核心逻辑图
下面这张图,帮你理清选型思路:
小技巧: 如果你不确定选哪个,先买一块树莓派5练手。等模型调通了,再根据实际性能需求升级到RK3588或Jetson。这样试错成本最低。
好了,这一章就到这里。选型没有标准答案,关键是你得清楚自己的需求。下一章我们开始动手——搭建Ollama的交叉编译环境。