常见问题

Jetson Xavier NX 国产开发套件评测

2022-04-27 admin

无论你是脑洞大开的创新者,还是善于钻研的开发者,高性能、易操作的开发工具总是必不可少。在这个过程中,以 Jetson 系列为代表的自主机器开发工具大大降低了自主开发创造的技术门槛。

图为Jetson Xavier NX国产套件以紧凑的外形尺寸提供高达 21 TOPS 的计算,功率低于 15W,为边缘 AI 设备和自主机器带来服务器级性能和云原生工作流。借助图为 Jetson Xavier NX国产套件,您可以创建令人惊叹的人工智能应用程序,并将深度神经网络 (DNN) 模型和流行的机器学习框架快速部署到该领域。NVIDIA JetPack 4.4 Developer Preview的初始软件支持包括 CUDA Toolkit 10.2 和 cuDNN 8.0、TensorRT 7.1 和 DeepStream 5.0 的预览版,以及用于机器学习和预训练 DNN 模型的新 Docker 容器(目前已经Jetpack版本已经升级到4.6.1)。

Jetson Xavier NX 基于 NVIDIA 开创性的 Xavier SoC,可以并行运行多个复杂模型和多个高清传感器流。它包括以下功能:

· An integrated NVIDIA Volta 384-core Volta GPU with 48 Tensor Cores

· Two NVIDIA Deep Learning Accelerator engines

· Seven-way VLIW Vision Accelerator

· Six-core NVIDIA Carmel 64-bit ARMv8.2 CPU

· 8-GB 128-bit LPDDR4x  

为了进一步简化边缘 AI 应用程序在生产环境中的部署,NVIDIA 为 Jetson 带来了云原生技术,包括基于 Docker 的容器化以及硬件直通和 Kubernetes 等编排服务,以及可从 NVIDIA NGC 注册中心获得的预训练模型和容器映像.

图为Jetson Xavier NX 国产套件评测

图为Jetson Xavier NX 国产套件和 NVIDIA Jetson Nano 开发套件体积大小相同,性能却提升了几十倍。

图为Jetson Xavier NX 国产套件自带一个预组装的散热器/风扇,如下图所示,包括一个 19V 电源和基于 M.2 的 802.11 WLAN+BT 模块。除了核心板自带16G emmc存储外,核心板下方还有一个sd卡槽,用于存储扩展(此设计主要出于成本考虑),载体底部还提供了一个 M.2 Key-M NVMe 插槽,用于扩展高速存储。

由于 Xavier NX 模块向后兼容 Jetson Nano (B01),它们的载板有一些共同点——还包括双 MIPI CSI 摄像头连接器,以及四个 USB 3.1 端口、HDMI、DisplayPort、千兆以太网和一个 40-引脚 GPIO 头。

虽说今年初 Jetson Nano 开发者套件更新 B01 后,载板已经兼容 Jetson Xavier NX 模块,但这次开发者套件还是配套了新的载板。目前注意到有几个区别:

● 自带 wifi-BT 模块,且安装位置移到载板反面,也就是说拆装 wifi 模块无需先取下核心模块

● 载板自带塑料底座,且集成了 wifi 天线。但只要卸掉 wifi 天线和 4 个固定螺丝,就可以下载板。经测试可直接使用之前给 Jetson Nano 设计的外壳,但要防止影响散热

● 增加了一个 m.2 接口,也在反面,可以装 nvme 固态硬盘。毕竟 Xavier NX 的 PCIe 配置是 1×1+1×4 (Gen3)

● 增加了 CAN 接口,且已经焊上排针,十分方便测试

● 供电口为9-19V,与 NVIDIA AGX Xavier 一致。给 Jetson Nano 准备的 5V 电源无法使用,不过 图为Jetson Xavier NX国产套件已经自带电源,无需太过担心.  

接下来我们详细研究了图为 Jetson Xavier NX国产套件的实际性能。从规格来看,Jetson Xavier NX 仿佛是在 AGX Xavier 基础上砍了一刀,就如同 Jetson Nano 是从 TX1 上切下来的。这一刀下去,功耗减半,体积缩小一圈,但性能仍保留了 AGX Xavier 的六七成功力。

深度学习推理基准

Jetson 可用于将各种流行的 DNN 模型和 ML 框架部署到具有高性能推理的边缘,用于实时分类和对象检测、姿势估计、语义分割和自然语言处理 (NLP) 等任务。 

JetPack SDK 和 NVIDIA CUDA-X 支持 Jetson 和 NVIDIA 独立 GPU 通用,这意味着您可以轻松地将性能和尺寸、重量和功耗 (SWaP) 消耗降至 5W,而无需重新编写应用程序. 下图显示了使用 JetPack 4.4 Developer Preview 和 TensorRT 7.1 在 Jetson Nano、Jetson TX2、Jetson Xavier NX 和 Jetson AGX Xavier 上流行的视觉 DNN 的推理基准。这些结果可以通过运行 GitHub 上的 open jetson_benchmarks项目来重现。

在 Jetson Xavier NX 和 Jetson AGX Xavier 上,NVIDIA 深度学习加速器 (NVDLA) 引擎和 GPU 以 INT8 精度同时运行,而在 Jetson Nano 和 Jetson TX2 上,GPU 以 FP16 精度运行。Jetson Xavier NX 的性能比 Jetson TX2 高出多达 10 倍,功率相同,占用空间减少 25%。

在这些基准测试中,每个平台都以最高性能运行(Jetson AGX Xavier 为 MAXN 模式,Xavier NX 和 TX2 为 15W,Nano 为 10W)。Nvidia还进行了BERT在问答方面的基准测试结果。BERT 是一种多功能架构,因其在多个 NLP 任务中的成功应用而越来越受欢迎,包括 QA、意图分类、情感分析、翻译、名称/实体识别、释义、推荐系统、自动完成等。

BERT 传统上过于复杂,无法在本地部署板载边缘设备,尤其是 BERT Large 变体。但是,由于 TensorRT 中包含针对 BERT 的 Tensor Core 优化,BERT 可以轻松地在 Jetson Xavier NX 和 Jetson AGX Xavier 上运行。

将 BERT 部署到边缘对于低延迟、智能人机交互 (HMI) 和对话式 AI 很有用,就像本文后面的多容器演示的聊天机器人部分一样,它还在本地执行自动语音识别 (ASR)并且不依赖于云连接。 

上图显示了 BERT Base 和 BERT Large 在问答方面的运行时性能,对 NLP 任务使用 50 毫秒的延迟阈值。这些结果以每秒的序列来衡量,其中每个文本序列都是 BERT 回答的查询或问题。Jetson 上的 BERT 性能为用户提供近乎即时的反馈,延迟低至 5.9 毫秒。这允许 BERT 处理与其他实时处理流(例如视频)同时执行。

Jetson Xavier NX的 NVIDIA多容器演示展示了使用云原生方法开发和部署服务机器人 AI 应用程序的过程。服务机器人是自主机器人,通常与零售、酒店、医疗保健或仓库中的人员进行交互。 

 

对于一个服务机器人,其目的是通过与购物者互动来改善零售百货商店的客户服务。如果机器人能够执行许多计算任务,包括人类识别、交互检测、人体姿态检测、语音检测和 NLP,它只能为客户查询提供有用的答案。机器人必须运行支持这些功能所需的多个 AI 模型。借助云原生方法,人工智能模型可以独立开发、容器化并包含所有依赖项,并部署到任何 Jetson 设备上。

该演示在 Jetson Xavier NX 上同时运行四个容器,其中包含七个深度学习模型,包括姿势估计、面部和凝视检测、人数统计、语音识别和 BERT 问答。结果是,这些服务构建块容器可以轻松修改和重新部署而不会中断,从而提供零停机时间和无缝更新体验。

Jetson Xavier NX 的计算能力使您能够一次运行所有这些容器,而不会牺牲跨多个传感器数据流的实时性能。您可以使用托管在 NGC 上的容器从NVIDIA-AI-IOT/jetson-cloudnative-demo GitHub 存储库下载演示。

对于 Xavier 系列,算力已不只是由 GPU 的 CUDA 核心提供,因此评估较为复杂。如果仅看 GPU 的 FP32 算力,有 845GFlops,处于比 TX2 强一些的水平。但是参考二者当前价格,即使只考虑 GPU 算力,也是Jetson Xavier NX 性价比较高。

得益于 Volta 架构,Jetson Xavier NX 有48个 Tensor 内核,提供了 6.8TFlops 的 FP16 算力。尽管 Volta 架构的 Tensor 内核不支持 INT8,但 Jetson Xavier NX 还有两个 DLA(Deep Learning Accelerator),提供 FP16 和 INT8 支持。这样总计就有 21TOPs 的 INT8 算力,这些只需要消耗 15W 功耗。如果切换到 10W 模式,也能提供 14TOPs 的算力。

这样可以有多种算力组合,要想把完全发挥性能,推荐大家使用 TensorRT。TensorRT 可以同时使用多种硬件资源,并能以混合精度来做推理。对于 IVA 类的任务,更可以通过 DeepStream 进一步优化。

从测试结果来看,Jetson Xavier NX 非常适合多路视频推理或多任务同时运行,而之前的 Jetson Nano 对此有压力。对于边缘计算应用,可以考虑用 Jetson Xavier NX 替代服务器。同时因为有了 CAN 口,对于机器人和工控应用也更为友好。考虑到其极低的功耗需求和极小的体积,应该很快就能看到其在机器人领域上的应用。

首页
产品
案例
联系