Jetson Orin 系列单 SoC 边缘/AI/机器人开发模块有 6 种选项,适用于任何复杂程度。然而,到目前为止,一次只能使用一个模块。在本文中,了解新的 Jetson AGX Orin 开发套件如何将开发工作分散到多个模块,以简化流程并最大限度地提高效率。
随着本周在 GTC 上发布 Jetson Orin Nano,整个 Jetson Orin 模块阵容现已亮相。Orin Nano 模块具有高达 40 TOPS 的 AI 性能,为入门级 AI 树立了新标准,正如 Jetson AGX Orin 已经通过 275 TOPS 的服务器级计算性能重新定义机器人技术和其他自主边缘用例一样。
所有 Jetson Orin 模块和 Jetson AGX Orin 开发套件均基于单个 SoC 架构,配备 NVIDIA Ampere 架构 GPU、高性能 CPU 和最新的加速器。这种共享架构意味着您可以为一个 Jetson Orin 模块开发软件,然后轻松部署到任何其他模块上。
您现在就可以使用 Jetson AGX Orin 开发套件开始开发任何 Jetson Orin 模块。开发套件能够本地模拟任何模块的性能,让您可以立即开始并缩短产品上市时间。通过配置硬件功能和时钟,使其与目标模块相匹配,开发者工具包可精确模拟任何 Jetson Orin 模块的性能。
开发团队受益于只需要一种开发工具包的简单性,而不管哪些模块是用于生产的。这也简化了 CI/CD 基础设施。无论您是开发机器人、视频分析还是任何其他用例,这款开发套件的功能都能带来诸多好处。
将 Jetson AGX Orin 开发套件转换为任何 Jetson Orin 模块
只需一步,您就可以将 Jetson AGX Orin 开发套件转换为任何一个 Jetson Orin 模块。为此过程提供了闪存配置文件。
在 Jetson AGX Orin 开发套件上模拟 Jetson Orin 模块的步骤与使用闪存工具闪存 Jetson AGX Orin 开发套件的步骤相同。将开发套件置于强制恢复模式后,使用 flash.sh 命令行工具闪存新镜像。例如,以下命令将闪烁开发套件的默认配置:
$ sudo ./flash.sh jetson-agx-orin-devkit mmcblk0p1
您使用的确切命令应该使用适合您所模拟的目标 Jetson Orin 模块的闪存配置名称进行修改。例如,要模拟 Jetson Orin NX 16GB 模块,请使用以下命令:
$ sudo ./flash.sh jetson-agx-orin-devkit-as-nx-16gb mmcblk0p1
表 1 列出了 Jetson Orin 模块和适合每个模块的 flash.sh 命令。
| 待模拟的 Jetson Orin 模块 | 闪存命令 |
| Jetson AGX Orin 64GB | sudo ./flash.sh jetson-agx-orin-devkit mmcblk0p1 |
| Jetson AGX Orin 32GB | sudo ./flash.sh jetson-agx-orin-devkit-as-jao-32gb mmcblk0p |
| Jetson Orin NX 16GB |
sudo ./flash.sh jetson-agx-orin-devkit-as-nx16gb mmcblk0p1
|
| Jetson Orin NX 8GB |
sudo ./flash.sh jetson-agx-orin-devkit-as-nx8gb mmcblk0p1
|
| Jetson Orin Nano 8GB* |
sudo ./flash.sh jetson-agx-orin-devkit-as-nano8gb mmcblk0p1
|
| Jetson Orin Nano 4GB |
sudo ./flash.sh jetson-agx-orin-devkit-as-nano4gb mmcblk0p1
|
截至 5.0.2 版本,Jetson Orin Nano 模块的 Flash 配置尚未包含在 NVIDIA JetPack 中。下载这些新配置,并按照下载文件中的说明在 NVIDIA JetPack 5.0.2 上应用覆盖补丁后使用。
有关可用于仿真的闪存配置的更多信息,请参阅仿真闪存配置。
刷写完成后,完成初始启动和配置。然后,您可以使用 SDK 管理器或简单地使用正在运行的开发工具包上的包管理器来安装其余的 NVIDIA JetPack 组件:
sudo apt update sudo apt install nvidia-jetpack
现在您已经运行了开发工具包并安装了 NVIDIA JetPack。您的 Jetson AGX Orin 开发套件现在可以模拟指定 Jetson Orin 模块的性能和功能。
准确模拟任何 Jetson Orin 模块
这种本机仿真是准确的,因为它配置开发套件以匹配目标模块可用的时钟频率、GPU 和 CPU 内核数量以及硬件加速器。
例如,模拟 Jetson Orin NX 16GB 模块时:
- 开发套件 GPU 配置有 1024 个 CUDA 核心和 32 个 Tensor 核心,最高频率为 918 MHz。
- 该 CPU 复合体配置了八个运行频率为 2 GHz 的 Arm Cortex-A78AE 内核。
- DRAM 配置为 16 GB,带宽为 102 GB/s。
- 该系统提供 Jetson Orin NX 16GB 模块支持的相同电源配置文件。
从桌面顶部菜单打开 Jetson Power 图形用户界面,您会看到系统已根据正在模拟的目标模块进行准确配置。最大时钟可通过运行以下命令进行配置,Jetson Power 图形用户界面将显示更改。
sudo jetson_clocks
图 2 显示了当 Jetson AGX Orin 开发套件刷入模拟的 Jetson AGX Orin 64GB 模块时配置最大时钟之后的 Jetson Power 图形用户界面,与刷入模拟 Jetson Orin NX 16GB 模块时的情况相比。
通过运行 NVIDIA JetPack 提供的各种示例,您可以看到性能已调整为与正在模拟的模块相匹配。例如,在配置 Jetson AGX Orin 开发套件以模拟相应模块后,可以使用 VPI 库打包的基准测试示例来展示 Jetson AGX Orin 64GB、Jetson Orin NX 16GB 和 Jetson Orin Nano 8GB 模块的 CPU、GPU 和 PVA 性能。
要运行 VPI 基准测试示例,请使用以下命令:
cd /opt/nvidia/vpi2/samples/05-benchmark sudo cmake . sudo make sudo ./vpi_sample_05_benchmark
VPI 基准测试样本输出高斯算法的延迟(以毫秒为单位)。表 2 显示了每个目标模块的结果。
|
算法:5X5 高斯滤波器 输入图像尺寸:1920 X 1080 输入格式:U16 |
模拟为 Jetson AGX Orin 64GB | 模拟为 Jetson Orin NX 16GB | 模拟为 Jetson Orin Nano 8GB |
| 在 CPU 上运行 | 0.331 | 0.492 | 0.838 |
| 在 GPU 上运行 | 0.065 | 0.143 | 0.210 |
| 在 PVA 上运行 | 1.169 | 1.888 | – |
同样,您也可以运行多媒体样本进行编码和解码。
要解码,请运行以下命令:
cd /usr/src/jetson_multimedia_api/samples/00_video_decode sudo make sudo ./video_decode H264 --disable-rendering --stats --max-perf <input file>
对于编码,运行以下命令:
cd /usr/src/jetson_multimedia_api/samples/01_video_encode sudo make sudo ./video_encode input.yuv 1920 1080 H264 out.h264 -fps 30 1 -ifi 1000 -idri 1000 --max-perf --stats
表 3 报告了使用 H.264 1080P 30FPS 视频流运行这些编码和解码样本后的 FPS 数。
| 编码器/解码器样本 | 模拟为 Jetson AGX Orin 64GB | 模拟为 Jetson Orin NX 16GB | 模拟为 Jetson Orin Nano 8GB |
| 编码 | 178 | 142 | 110* |
| 解码 | 400 | 374 | 231 |
*Jetson Orin Nano 不包含 NVEncoder。对于表 3,Jetson Orin Nano 的编码是使用 ffmpeg 在 CPU 上完成的。使用四个 CPU 核心时可实现 110 FPS。当使用两个 CPU 核心时,FPS 达到 73,而当使用单个 CPU 核心时,FPS 达到 33。
为了证明模拟的准确性,我们在模拟为 Jetson AGX Orin 32GB 的 Jetson AGX Orin 开发套件上运行了一些 AI 模型基准测试。然后,我们将其与在真实的 Jetson AGX Orin 32GB 模块上运行相同基准测试所获得的结果进行了比较。从结果可以看出,模拟性能和实际性能之间的差异并不明显。
尽管 Jetson AGX Orin 开发套件包含 32GB 模块,但它提供了相同级别的性能,并具有与 Jetson AGX Orin 64GB 相匹配的 275 TOPS。模拟 Jetson AGX Orin 64 GB 不需要特殊的闪存配置,但必须使用适当的闪存配置才能在 Jetson AGX Orin 开发套件上模拟 Jetson AGX Orin 32GB。
| 型号 | Jetson AGX Orin 32GB 仿真 | Jetson AGX Orin 32GB 真实 |
| PeopleNet(V2.5) | 327 | 320 |
| 2D 动作识别 | 1161 | 1151 |
| 动作识别 3D | 70 | 71 |
| LPR 网络 | 2776 | 2724 |
| 行车记录仪网络 | 1321 | 1303 |
| BodyPose Net | 359 | 363 |
为任何 Jetson Orin 模块进行端到端开发
您可以在模拟 Jetson Orin 模块的同时使用整个 Jetson 软件堆栈。NVIDIA DeepStream、NVIDIA Isaac 和 NVIDIA Riva 等框架在模拟模式下工作,而 TAO Toolkit 等工具可以与 NGC 的预训练模型一起按预期运行。软件堆栈与仿真无关,其性能与被仿真的目标性能精确匹配。
如果您正在开发机器人用例或开发视觉 AI 管道,您今天就可以使用 Jetson AGX Orin 开发套件和仿真模式对任何 Jetson Orin 模块进行端到端开发。
使用 NVIDIA Isaac ROS 为任何 Jetson Orin 模块开发机器人应用程序。只需使用正确的闪存配置进行闪存,即可开始 ROS 开发。图 5 显示在模拟为 Jetson Orin Nano 8GB 的 Jetson AGX Orin 开发套件上运行 Isaac ROS 立体视差 DNN。
使用 Jetson AGX Orin 开发套件上的 DeepStream 为任何 Jetson Orin 模块开发视觉 AI 管道。它确实有效!
图 6 显示了在 Jetson AGX Orin 开发套件上使用 DeepStream 运行人体检测的 IVA 管道,该套件模拟为 Jetson Orin Nano 8GB,具有四个 H.265 1080P 30FPS 流。
使用 Jetson AGX Orin 开发套件加速产品上市
借助仿真支持,您可以在 Jetson AGX Orin 开发套件上开始和完成应用程序开发,从而更快地投入生产。购买套件并开始您的开发。
