关于ARM开发(AI)的坑
Posted tt姐
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于ARM开发(AI)的坑相关的知识,希望对你有一定的参考价值。
可能本人有些菜鸡啊 还需要社区里 大佬们一起交流哦
现在是在做边缘机和异构服务器,边缘机是ARM的,用python还好一些吧,用c++比较烦躁了 装环境什么的,还有交叉编译arm的也很烦躁,还有就是各种驱动也要自己弄 ,usb的就很烦 好像总要改一改后来就都改用了 ttl转485,由于手里预算有限( 近日 受 川北小区 东屯 收卖破废品来炒股的老师 影响 把农村房子烧没了 钱都去重建了 ) 手里就5000左右吧,不知道是买个 jetson xavier nx 好啊 还是弄个破台式机加个 nvidia 显卡好, 想是在开发板里装个开发工具的,这样就不用考虑交叉编译的问题了,但 又害怕太卡cpu不够用的,看着性能指标cpu的不怎么样呢,买台式吧就要考虑编译,主要是还需要使用GPU和cuda开发,求问大伙是怎么解决的呢,现在公司里是有GPU服务器远程开发 然后交叉编译,效率太低 太烦人了 ,求ai相关大佬出现
By whaosoft aiot http://www.143ai.com
先只考虑nivdia相关平台板卡哦 请大家踊跃交流啊
也用过一些别的平台 感觉也不太通用 性能也没吹的这么好 所以暂时还用这个 大伙不喜勿喷哦
之前测的nano还可以 不过 用来做开发装工具估计费劲吧 但又穷所以只能考虑nx ,AGX买不起
简单介绍 nx啊
Jetson Xavier NX 包括集成的 384 核 NVIDIA Volta GPU , 48 个张量核, 6 核 NVIDIA Carmel ARMv8 。 2 64 位 CPU , 8GB 128 位 LPDDR4x ,双 NVIDIA 深度学习加速器( NVDLA )引擎, 4K 视频编码器和解码器,专用摄像机摄取,最多 6 个同时高分辨率传感器流, PCIe Gen 3 扩展、双显示端口/ HDMI 4K 显示器、 USB 3 。 1 和 GPIO ,包括 SPI 、 I2C 、 I2S 、 CAN 总线和 UART 。有关特性列表,请参阅下表 1 ,有关完整规格,请参阅 Jetson Xavier NX 模块数据表 。共享内存结构允许处理器自由地共享内存,而不会产生额外的内存拷贝(称为零拷贝),这有效地提高了系统的带宽利用率和吞吐量。
表 1 : Jetson Xavier NX 计算模块特性和功能
* CPU 4 / 6 核模式下的最大工作频率为 1400MHz ,双核模式下的最大工作频率为 1900MHz
†最大并发流数,达到总吞吐量。支持的视频编解码器: H 。 265 、 H 。 264 、 VP9
有关具体的编解码器和配置文件规范,请参阅 Jetson Xavier NX 模块数据表 。
†††每通道 2 英镑/ MIP ,总计 2 英镑。
‡ PCIe 1 × 1 仅支持根端口, 1 × 1 / 2 / 4 支持根端口或端点模式
^工作温度范围, Xavier SoC 结温( Tj )
Jetson Xavier NX 由 NVIDIA 完整的 CUDA -X 软件栈和 JetPack SDK 开发包 为 AI 开发提供支持,除了实时计算机视觉外,还可以在多个高分辨率传感器流上同时运行流行的机器学习框架和复杂的 DNN ,在全桌面 Linux 环境中加速图形和丰富的多媒体应用程序。 Jetson 与 NVIDIA 的 AI 加速计算平台的兼容性使得开发更加容易,云和 edge 之间的 MIG 无缝匹配。
设计抵押品 Jetson Xavier NX 设计指南 NX 模块将于 2020 年 3 月面市,售价 399 美元,嵌入式设计师可以参考可供下载的 Jetson ,包括 Xavier ,为 Jetson Xavier NX 模块创建生产设备和系统。与 Jetson Nano 的引脚兼容性允许共享设计和直接的技术插入升级到 Jetson Xavier NX 。除了提供现成的载体、传感器和配件外, Jetson 生态系统 的硬件设计合作伙伴还能够提供定制设计服务和系统集成。
软件开发人员现在可以开始为 Jetson Xavier NX 构建人工智能应用程序,方法是使用 Jetson AGX Xavier 开发工具包,并将 设备配置修补程序 应用到 JetPack 上,使设备的行为类似于 Jetson Xavier NX 。通过软件,它将改变可用的 CPU 和 GPU 核心的数量,此外还可以设置整个系统的核心时钟频率和电压。该补丁是完全可逆的,可用于在硬件可用之前近似于 Jetson Xavier NX 的性能。
Jetson Xavier NX 定义了 10 和 15W 的默认电源模式,根据活动模式,可实现 14 到 21 个峰值性能。用于管理电源配置文件的 nvpmodel 工具可调整 CPU 、 GPU 、内存控制器和其他 SoC 时钟的最大时钟频率,以及在线 CPU 集群的数量 – 这些设置如表 2 所示,适用于 Jetson Xavier NX 的预定义 10W 和 15W 模式。 CPU 分为三组,每组 2 个核, 4 / 6 核模式下的最大工作频率为 1400MHz ,双核模式下的最高工作频率为 1900MHz ,对于可能需要更高单线程性能和多线程性能的应用而言,最高工作频率为 1900MHz 。
NVIDIA Jetson Xavier NX – Power Modes
表 2 : Jetson Xavier NX 10W 和 15W 电源模式的最大工作频率和核心配置。
*使用 NVDLA 时, GPU 最大工作频率为 600MHz ( 10W 模式)和 1000MHz ( 15W 模式)
根据工作负载,动态电压和频率缩放( DVFS )调控器在运行时将频率调整到活动 nvpmodel 所定义的最大限制,因此在空闲时根据处理器利用率降低功耗。 nvpmodel 工具还可以根据应用需求和 TDP 轻松创建和定制新的电源模式。可以编辑电源配置文件并将其添加到/ etc / NVP 模式。 conf 配置文件和一个 GUI 小部件被添加到 Ubuntu 状态栏中,以便在运行时方便地管理和切换电源模式。
深度学习推断基准
今天 NVIDIA 还宣布,它在 MLPerf 推断 0 。 5 基准测试中占据了 5 个类别中的 4 个类别的榜首,其中 Jetson AGX Xavier 是边缘计算 SoC 的领导者,包括所有基于视觉的任务:使用 Mobilenet 和 ResNet-50 进行图像分类,以及使用 SSD Mobilenet 和 SSD ResNet 进行目标检测。 NVIDIA GPUs 是十个竞争芯片架构中唯一一个在 MLPerf 定义的所有五个推断测试中提交结果的。
为了参考 Jetson 家族成员之间的可伸缩性,我们还测量了 Jetson Nano 、 Jetson TX2 、 Jetson Xavier NX 和 Jetson AGX Xavier 对图像分类、目标检测、位姿估计、分割等常用 DNN 模型的推理性能。这些结果,如下面的图 3 所示,是用 JetPack 和 NVIDIA 的 TensorRT 推断加速器库运行的,该库优化了网络的实时性能,该库是在流行的 ML 框架(如 TensorFlow 、 PyTorch 、 Caffe 、 MXNet 等)中训练出来的。
图 3 。用 TensorRT 来推断 Jetson 家族中各种基于视觉的 DNN 模型的性能。
Jetson Xavier NX 的性能比 Jetson TX2 高 10 倍,功耗相同,占地面积小 25% 。在这些基准测试期间,每个平台都以最高性能运行( MAX-N 模式用于 Jetson AGX Xavier , Xavier NX 和 TX2 为 15W , Nano 为 10W )。最大吞吐量是在批处理大小不超过 16ms 的延迟阈值的情况下获得的,否则,对于平台超过该延迟阈值的网络,批处理大小为 1 。这种方法在实时应用程序的确定性低延迟需求和多流用例场景的最大性能之间提供了平衡。
在 Xavier Jetson NX 和 Jetson AGX Xavier 上, NVDLA 引擎和 GPU 同时以 INT8 精度运行,而在 Jetson Nano 和 Jetson TX2 上 GPU 以 FP16 精度运行, Jetson Xavier NX 中具有张量核心的 Volta 架构 GPU 可以达到 12 。 3 个计算顶层,而该模块的 DLA 引擎每台最多可产生 4 。 5 台。
除了用 TensorRT 运行神经网络外, ML 框架还可以通过 cuDNN 和 CUDA 加速在 Jetson 上安装,包括 TensorFlow 、 PyTorch 、 Caffe / Caffe2 、 MXNet 、 Keras 等。除了 AWS Greengrass 等物联网框架和 Docker 和 Kubernetes 等容器引擎外, Jetson 动物园 还包括这些预构建的安装程序和构建说明。
nx 设备需要在较小、低功耗的空间内实现高性能人工智能和复杂的 DNN ,比如移动机器人、无人机、智能相机、便携式医疗设备、嵌入式物联网系统等等。 NVIDIA 支持 CUDA -X 的 JetPack SDK 提供了开发尖端 AI 解决方案的完整工具,并以世界领先的性能在云端和边缘之间扩展应。
以上是关于关于ARM开发(AI)的坑的主要内容,如果未能解决你的问题,请参考以下文章
解读最佳实践:倚天710 ARM芯片的 Python+AI 算力优化