Jetson 开发环境验证与性能调优完整 Checklist
适用设备:NVIDIA Jetson Nano / Xavier NX / Orin NX / Orin Nano Super
目标:新机/重置后,10 分钟内完成环境验证、性能锁频、监控部署,确保后续 Benchmark 结果可复现。
1️⃣ 硬件型号与系统版本
板卡型号
cat /proc/device-tree/model
预期输出示例:
NVIDIA Jetson Orin Nano Developer KitNVIDIA Jetson AGX Xavier
✅ 验收:确认板卡型号与实际一致。
L4T 版本(Linux for Tegra)
cat /etc/nv_tegra_release
输出示例:
# R36 (release), REVISION: 4.0, GCID: 12345678, ...
| JetPack 版本 | L4T 版本代号 |
|---|---|
| JetPack 5.1 | R35.x |
| JetPack 6.0 | R36.x |
✅ 验收:确认 L4T 主版本号,决定后续安装包版本。
2️⃣ 资源状态(CPU/内存/存储)
CPU 核心数
cat /proc/cpuinfo | grep -c processor
- Orin NX / Orin Nano:通常 8 核(ARM Cortex-A78AE)
- Nano:4 核(ARM Cortex-A57)
内存大小
free -h
预期:
- Orin Nano 4GB / 8GB(Super 版 8GB)
- Orin NX 8GB / 16GB
存储剩余空间
df -h /
⚠️ 关键:系统镜像(含容器、模型)容易塞满 32GB/64GB eMMC。
建议:剩余 < 5GB 时,清理 /var/cache/apt/archives/* 和旧内核。
3️⃣ CUDA 工具链版本
检查 nvcc
nvcc --version
若提示 command not found:
export PATH=/usr/local/cuda/bin:$PATH
预期(JetPack 6):
release 12.x, V12.6.xx
✅ 验收:CUDA 版本 ≥ 11.0 才能运行主流 AI 框架。
4️⃣ 深度学习加速库(TensorRT / cuDNN)
检查已安装包
dpkg -l | grep -i tensorrt
dpkg -l | grep -i cudnn
预期(JetPack 6):
- TensorRT 10.x
- cuDNN 9.x
若无输出:需从 NVIDIA 官方源安装:
sudo apt update
sudo apt install nvidia-tensorrt libcudnn9
5️⃣ 性能监控工具(jetson-stats + jtop)
安装
sudo pip3 install -U jetson-stats
重启后生效(或 sudo systemctl restart jtop)。
使用
sudo jtop
界面关键信息:
- CPU/GPU 实时频率
- 内存用量
- 温度和功耗
- 每个进程的 GPU 占用
✅ 验收:能看见 GR3D(GPU 使用率)曲线跳动。
6️⃣ 功耗模式与频率锁频(🔴 性能测试前必做)
查看当前功耗模式
sudo nvpmodel -q
输出示例:
NVPMODEL: CPU Cluster Mode: 0
NVPMODEL: Power Mode: MAXN SUPER
设置最大性能模式(Orin 系列)
sudo nvpmodel -m 0 # 0 通常为最高性能档(Super 对应 MAXN SUPER)
各机型模式编号速查:
| 设备 | 7W 省电 | 15W 平衡 | 25W 高性能 | MAXN(超频) |
|---|---|---|---|---|
| Orin Nano | 2 | 0 | — | 0(Super) |
| Orin NX | 2 | 1 | 0 | 0(同高性能) |
| Xavier NX | 3 | 2 | 1 | 0 |
锁定最高频率(关闭动态调频)
sudo jetson_clocks
sudo jetson_clocks --show # 确认所有频率拉满
显示示例:
GPU: 918750 KHz
EMC: 3200000 KHz
实时监控(验证锁频生效)
sudo tegrastats
每秒输出:
RAM:内存使用量GR3D:GPU 占用率temp:核心温度(应 < 80°C)power:当前功耗(若锁 MAXN,应接近标称 TDP)
查看 NVIDIA 完整状态
nvidia-smi
仅部分 Jetson 支持(Orin 系列通常支持)。
⚠️ 为什么必须锁频?(关键 Principle)
| 不锁频(动态) | 锁频后(固定) |
|---|---|
| 运行 1 分钟:满载 → 过热降频 → 性能衰减 40% | 全程最高频率,性能恒定 |
| 测出的推理速度每天不同 | 每次跑结果一致,可复现 |
| 无法判断是算法慢还是硬件降频 | 所有差异来自算法/模型本身 |
✅ 验收标准:执行 sudo jetson_clocks --show 后,所有频率显示为固定值(不再变化)。
📋 最终验证汇总表
| 检查项 | 命令 | 通过标准 |
|---|---|---|
| 板型 | cat /proc/device-tree/model |
匹配实际硬件 |
| L4T 版本 | cat /etc/nv_tegra_release |
R35(JP5)/ R36(JP6) |
| 内存 | free -h |
符合板卡规格 |
| 存储 | df -h / |
> 5GB 剩余 |
| CUDA | nvcc --version |
12.x |
| TRT/cuDNN | dpkg -l | grep |
TRT 10.x / cuDNN 9.x |
| 功耗模式 | sudo nvpmodel -q |
MAXN 或 最高性能 |
| 频率锁定 | sudo jetson_clocks --show |
所有频率为固定最高值 |
| 监控可用 | sudo jtop |
看到 GR3D 曲线 |
评论
0