嘿!您似乎在 United States,您想使用我们的 English 网站吗?
Switch to English site
Skip to main content

Jetson Nano 2GB 让人工智能更加触手可及

Main50_f64d40c994e65b691869668f4db382014b22cb5d.jpg

新的 NVIDIA 开发工具包进一步降低了亲身体验人工智能、机器人和其他 CUDA 加速计算应用的门槛。

当最初的 Jetson Nano 推出时,它引起了相当大的轰动,因为它结合了四核 ARM 处理器和 128 核 GPU,还有 4GB 内存、千兆以太网和 USB 3.0 等等,并且价格相当优惠。不仅如此,该系列的最新版本(204-9969)甚至还进一步降低了亲身体验功能平台的门槛,提供了一个更优惠的新开发工具包,其价格大约是原来 Nano 的一半。

顾名思义,这款新的 Jetson Nano 开发工具包采用 2GB 内存而非 4GB,它还有一些其他变动。然而,正如我们看到的,Jetson Nano 2GB 仍非常适合许多应用,特别是其价格大大降低,让更多的人能够亲身体验到人工智能和其他 CUDA 加速应用。更何况它还能嵌入到各种低成本项目中。

2GB + 4GB 对比

SideBySide_38310a15cfa3e985bea0fbeaadcdc729754b48f2.jpg

我们可以在上面看到并列的 Jetson Nano 2GB 和 4GB 开发工具包。此时需要注意的是,后者是 A02 规格,而不是更新的 B01 工具包,它们之间一个明显的区别是,现在的 4GB 工具包有 2 个 CSI-2 摄像头接口。因此,与早期的 4GB 工具包一样,Jetson Nano 2GB 只有一个 CSI-2 摄像头接口。对于许多应用来说,这是绰绰有余的,当然,您还可以通过 USB 连接摄像头。

PortDetail_31a30d2408b93206e7e2ee8687e337b679853de4.jpg

另一个关键的区别是,4GB 工具包有 4 个 USB 3.0 接口,而 2GB 工具包有 2 个 USB 2.0 接口和一个 USB 3.0 接口。同样,这对于很多应用来说是完全够用的,而且当在学习环境中使用该工具包时,很可能其中一个甚至两个 USB 接口都只是用来连接键盘和鼠标。说到用作工作站,4GB 工具包同时具备 HDMI 和 DisplayPort 接口,但 2GB 型号只有 HDMI。

USB-C_51833693c567e288b2a2083af46f8d7962ab5fc9.jpg

在开发板上看到 DC 同轴接口并不稀奇,4GB 工具包有一个 5.5/2.1mm 的电源接口。然而,新的 2GB 工具包通过将最大电流消耗从 4A 减少到 3A,用 USB-C 接口取代了这个接口,也就是通过 USB-C 供应 5V 电源。

Power_9eb9b7a34a9d06725ffd4eb336cc43aadf59ee5d.jpg

这似乎只是一个小细节,但 USB-C 电源的应用更加广泛,这也体现了我们致力于让这项技术变得更加普及的承诺。

M2_ad530106ef30dee8a5bef6080209d4f4733eb729.jpg

一个不太明显的区别是,4GB 工具包的特点是在 Jetson 系统模块(SoM)下藏有一个 M.2 接头,而 2GB 工具包则没有这个接头。然而,由于空间有限,插槽是用于笔记本电脑式 WLAN 适配器等的 Key-E 型,而不是 SSD。在需要 WiFi 的地方,可以使用 USB 适配器。

4GB 和 2GB 工具包在 SoM 上都有 Micro SD 插槽,一般用于存储,但也可以连接 U 盘。2GB 工具包具有相同的 40 针扩展头,还有第二个较小的头,用于连接电源按钮、复位和 UART 等。同样,4GB 和 2GB 工具包都有千兆以太网。

Expansion_2439e5cc8387dba04cfa72d163aedddbcf6bc8ae.jpg

总结一下主要区别:2GB 而不是 4GB 内存,有一个 CSI-2 接口,没有那么多的 USB 3.0 端口(您可以使用外部集线器),没有 DisplayPort(大多数显示器都有 HDMI 输入),没有 M.2 插槽(可以使用 USB WiFi 适配器)。但同样有四核 CPU 和 128 核 GPU 以及其他出色的 SoC 功能,价格几乎减半。

与其他平台的比较

特点

Jetson Nano 开发工具包

Raspberry Pi 4

Coral(测试版)开发板

CPU

四核 ARM A57

四核 ARM A72

四核 ARM A53

GPU

472 GFLOPS (FP16)

-

64 GFLOPS (FP16)

内存

4GB 64 位
LPDDR4 1600MHz
25.6 GB/s

2GB、4GB 或 8GB 64 位
LPDDR4 3200 MHz SDRAM
(取决于模型)

1GB 32 位
LPDDR4 1600MHz
12.8 GB/s

DL HW

CUDA GPU

CPU

TPU

DL SW

支持所有流行的框架

- TensorFLow
- PyTorch
- Caffe
- MxNet

支持多种模型

支持框架

- TensorFLow
- PyTorch
- Caffe
- MxNet

支持多种模型

只支持一个简化的框架

- TensorFlow Lite

只支持几个选定的模型

编解码器 HW

4K60 | 8x 1080p30 HEVC 解码

4K30 | 4x 1080p30 HEVC 编码

4K60 HEVC 解码
1080P60 AVC 解码
1080P AVC 编码

4K60 HEVC 解码
不支持编码

WiFi/BT

USB 端口

附带外部 WiFi 加密狗

1x USB 3.0
2x USB 2.0
1x USB 2.0 Micro-B

集成 WiFi

2x USB 3.0
2x USB 2.0

集成 WiFi

1x USB 3.0 

对比表由 NVIDIA 提供。

考虑到这个价位,与 Raspberry Pi 4 进行比较,结果是相当明显的,虽然它有 GPU,但目前几乎只能用于显卡。这意味着人工智能工作负载将完全在 CPU 上执行,因此性能将远远低于 Jetson Nano 所能达到的效果。事实上,NVIDIA 表示,2GB 开发工具包可以提供高达 200 倍的 Raspberry Pi 4 性能。然而,Pi 4 拥有更强大的 ARM CPU,并且其他型号可以提供高达 8GB 的内存,因此对于许多非 AI/并行处理工作负载来说,它可能仍然是更好的选择。

同样,Google Coral 集成了一个用于加速 AI 工作负载的张量处理单元(TPU),我们可以看到,原始 GFLOPS 性能低于 Jetson Nano GPU 提供的性能,同时该板也只有一半的 RAM 和一半的内存带宽。除此之外,Coral 对 AI 框架的支持非常有限,这显然无法利用更广泛的 CUDA 生态系统,该系统中的软件可以加速许多其他非 AI 工作负载。尽管如此,基准测试显示,某些通过 Tensorflow Lite 在 Coral 上运行的模型具有更好的性能。除此之外,Coral 平台不仅可以通过开发板提供,还可以作为 USB 加速器、SoM 和 M.2/Mini-PCIe 板提供。

当然,还有越来越多的更深层次的嵌入式解决方案可供选择,这些解决方案往往是基于在微控制器上运行的精简和定制人工智能框架。如果您有超低功耗的要求,而且您的应用适合这一类硬件,它们都是很好的选择。例如,一个具有人员检测功能的基本智能监控摄像头。然而,这种解决方案不太适合许多要求更高的应用。

另一个需要注意的关键点是,使用 Jetson 可以在同一硬件上同时运行推理和训练。考虑到训练比推理的计算要求更高,在 CPU 上尝试这样做几乎没有意义。因此,当在 Raspberry Pi 或基于 uC 的平台上执行 AI 模型时,需要在另一台计算机上进行训练,而这台计算机往往是配备了 NVIDIA GPU 的桌面、服务器或云系统。

Jetson Nano 不能提供与配备最新 PCIe GPU 的计算机相同的性能,但它提供了一个非常实惠的入门平台,让人工智能新手能够以最小的支出获得训练和推理的实践。此外,它还有一些有趣的应用,例如设备上的迭代训练。如果需要更多的资源和/或更快的训练,由于跨 CUDA 硬件的可移植性,它可以很容易地进行扩展。

因此,总结起来,Jetson Nano 提供了执行 AI 推理的出色性能,此外,它也可以用于训练模型。然而,为任务选择合适的工具非常重要,在某些情况下,其他平台可能更加适合。

软件支持

 

CUDA2_e8c416ee46451e6868c1192a12376dd9b6938464.jpg

上一篇文章 中,我回顾了最初的 Jetson Nano 4GB,并介绍了软件栈。总结一下,CUDA 是 NVIDIA 创建的并行计算平台和 API 模型,用于提供对 GPU 的访问。它支持的设备包括用于嵌入式平台(如 Jetson 系列)的设备、高性能的数据中心解决方案等。除了扩展 C/C++ 和实现 FORTRAN(在高性能计算中非常流行)外,它还提供了一套加速库。

Jetpack1_78d721f8c961e4fda89bb7dfc39d72f35a055ed4.jpg

JetPack SDK 建立在 CUDA 之上,并提供了操作系统映像、库、API、示例和开发工具。它包括诸如基于 Ubuntu 的 Jetson Nano 映像,以及各种用于开发深度学习和计算机视觉应用的高级加速库。

PyRadio_53b780a7d2cb9842348a4683cb6fa81df81c67b7.jpg

如前所述,CUDA 还可以用来加速非 AI 工作负载,比如数字信号处理,为此,NVIDIA 提供了一个名为 cuSignal 的软件,它可以在 Python 应用中实现 GPU 加速信号处理。一个简单但非常有效的例子是 PyRadio,它是一套软件定义无线电(SDR)脚本,与桌面 GPU 一起使用时,能够并行解调 35 个以上的 FM 广播电台。

人工智能和机器人等相关领域或许为 GPU(即并行处理)带来了前所未有的机会,但这只是冰山一角。事实上,随着这项技术被更多人所掌握,我们会看到软件的蓬勃发展,它们将能够加速越来越多的计算密集型非 AI 工作负载。

Jetson 人工智能认证

DLI-diagram2_696226520e86580bb612e2cd4c58400595290b0f.png

在发布 Jetson Nano 2GB 的同时,NVIDIA 还通过其深度学习学院推出了 Jetson 人工智能认证。这为人工智能专家和人工智能大使提供了认证途径,后者主要指的是教育工作者和讲师。两者都需要基本熟悉 Linux 和 Python,而大使认证还建议申请者有教学或培训经验。

结构化的课程内容由 NVIDIA 提供,人工智能专家认证要求报名者“提交一个使用 NVIDIA Jetson 的开源项目,并将人工智能(机器学习或深度学习)的元素与 GPU 加速结合起来,同时提交一段展示实际项目的视频”。人工智能大使认证涉及额外的面试步骤。

最后的感想

Jetson Nano 2GB 让更多的人有机会接触到人工智能和其他 CUDA 加速(并行处理)应用。它由于低价位也适用于许多项目,例如,在没必要使用高性价比的 4GB 型号的情况下,可将其用于有趣的业余创作,或作为大型研究项目的组件。

Andrew Back

Open source (hardware and software!) advocate, Treasurer and Director of the Free and Open Source Silicon Foundation, organiser of Wuthering Bytes technology festival and founder of the Open Source Hardware User Group.