NVIDIA® Jetson AGX OrinTM series (资料来源:nvidia-jetson-agx-orin-technical-brief.pdf)
1 整体介绍
1) Orin SoC结构
Orin SoC,如下图所示,由一个NVIDIA Ampere architecture GPU, Arm® Cortex®-A78AE CPU, 下一代深度学习核视觉处理加速器, 视频编码器和视频解码器组成。
2) Orin和Xavier配置对比
3) AGX ORIN分为32GB、64GB两种模块
2 核心模块说明
1) GPU
GPU由两个GPC组成,共计16个SM单元,192KB L1 Cache和4MB L2 Cache。每个SM具备128个CUDA核(共计2048个-5.3 FP32 TFLOPs)和4个第三代Tensor核(共计64个-170 sparse TOPs INT8)。
2) Tensor核
主要提供矩阵乘法累加计算,支持16个半精度HMMA和32个整型IMMA,并且支持稀疏计算。
3) TensorRT和cuDNN
TensorRT 是一个深度学习推理的运行时库和优化器,提供低的延迟和高吞吐量,用于解析训练好的模型,通过将模型量化到 INT8 格式、优化 GPU 内存和带宽利用(如内核节点融合)以及选择最佳的数据层和算法,最大化推理性能。
cuDNN提供了深度神经网络常见操作的高度优化实现,例如卷积前向和反向、交叉相关、池化前向和反向、softmax 前向和反向以及张量变换功能等。
4) DLA
DLA 2.0 提供了高效能的架构,增加了本地缓冲区,提高了能效并减少了 DRAM 带宽。同时DLA 2.0 引入了结构化稀疏性、深度卷积和硬件调度器等新特性,支持最多 105 INT8 稀疏 TOPs 性能,相比 Jetson AGX Xavier DLA 的 11.4 INT8 密集 TOPs 大幅提升。
用户可以使用 TensorRT 加速 DLA 上的模型,NVIDIA DLA 设计用于从 GPU 卸载深度学习推理,使 GPU 能够运行更复杂的网络和动态任务;TensorRT 支持在 DLA 上运行 INT8 或 FP16 的网络,并支持卷积、反卷积、全连接、激活、池化、批量归一化等层。
5) CPU
CPU使用ARM Cortex-A78AE CPU 取代了 NVIDIA Carmel CPU,包含 12 个 CPU 核心,每个核心具有 64KB 的指令 L1 缓存和 64KB 的数据缓存,以及 256KB 的 L2 缓存,每个集群还具有 2MB 的 L3 缓存,最高支持 2.2 GHz 的 CPU 频率。
6) AI性能对比
3 实例介绍
1)自动泊车系统
1.1) 环境感知:摄像头捕捉停车场景,LiDAR扫描周围环境。
处理单元:CUDA核心处理图像预处理,Tensor核心运行YOLO等物体检测模型识别停车位和障碍物。
1.2) 路径规划:计算最优泊车路径。
处理单元:ARM CPU核(可结合DLA核-支持3D建模、路径规划、语义理解等)运行路径规划算法(如 A* 或 Dijkstra 算法),生成泊车轨迹。
1.3) 传感器融合:融合摄像头和LiDAR数据,生成准确的停车场景。
处理单元:CUDA核心处理数据融合,ARM CPU核进行高层次决策生成统一环境模型。
1.4) 车辆控制:执行泊车操作。
处理单元:ARM CPU核控制转向和速度,实现平稳泊车。
2) 计算机视觉处理
NVIDIA Jetson AGX Orin 通过 PVA 和 VIC 提供了强大的计算机视觉处理能力,结合 VPI 软件库,可以灵活地在多种硬件组件上运行复杂的视觉算法,从而优化计算资源的利用。
2.1)可编程视觉加速器(PVA)
双7路 VLIW(超长指令字)矢量处理单元:可以并行处理多个指令,提高计算效率。
双 DMA 引擎:用于高效的数据传输,减少数据传输的瓶颈。
Cortex-R5 子系统:负责控制和调度任务,提供实时处理能力。
PVA 支持:滤波,对图像进行平滑或增强处理;图像扭曲,调整图像的几何形状;图像金字塔,多分辨率图像表示,用于检测不同尺度的特征;特征检测,检测图像中的关键点;快速傅里叶变换(FFT),用于频域分析。
2.2)视频成像合成器(VIC)2D 引擎
VIC 支持的图像处理功能:镜头畸变校正,增强时间噪声减少,频锐化增强,颜色空间转换,图像缩放,图像混合与合成。
2.3)视觉编程接口(VPI)
VPI 是一个软件库,旨在实现计算机视觉和图像处理算法的硬件加速。它支持在 PVA、VIC、CPU 和 GPU 上运行计算机视觉任务,从而有效地分配计算资源。例如,基本图像处理(如框滤波、卷积、图像重缩放和重映射);复杂计算机视觉算法(如 Harris 角点检测、KLT 特征跟踪、光流、背景减法等)。
2.4) 立体视差估计(Stereo Disparity Estimation)流水线示例
输入:来自立体相机的左图像和右图像。
处理步骤:
a) 镜头畸变校正和图像缩放:由 VIC 处理。
b) 颜色转换为灰度图像:由 GPU 处理。
c) 特征检测和立体匹配:由 PVA 和 NVENC 处理。
输出:生成输入图像之间的视差估计,反映场景深度。