开发者实测:NVIDIAJetsonAGXXavier使用开发套件的初步经验

 行业动态     |      2022-08-31 14:36:06    |      沥拓

  

  01

  背景

  如果将信息技术产业划分为三个时代:PC时代、移动互联网时代和人工智能(AI)时间。目前,我们正处于移动互联网时代末期和下一个时代早期,即以深度神经网络算法为核心的时代AI时代。

  近年来,机器学习领域最引人注目的方向是深度神经网络模拟人脑的工作原理。2006年深度学习领军者GeoffreyHinton提出了基于“逐层训练”和“精调”在解决了深度神经网络参数训练问题后,学术界和工业界对深度神经网络的研究充满热情,在语音识别、图像识别、自然语言处理等领域逐步取得突破。2012年深度卷积神经网络ImageNet在图像分类竞赛中,世界第一,标志着传统方法超越了手工设计的特点。此后,深度神经网络的发展进入了快车道。2016年基于深度学习AlphaGo他击败了世界围棋冠军李世石,并同时举行了著名的人工智能学术会议CVPR,NIPS,AAAI和ICLR深度神经网络的主题占主导地位。以深度神经网络为核心的2017年DeepStack算法在德州扑克游戏中击败了人类职业玩家。人工智能芯片于2018年应用于云计算和移动终端。目前,深度神经网络的研究正朝着更深更广的方向发展。一方面,深度神经网络的理论研究越来越深入。另一方面,如何开发基于深度神经网络的智能系统已经成为关键,特别是如何将人工智能技术与边缘计算相结合。

  作为一种计算模式,云计算已经渗透到我们的日常生活中,但有很多应用。由于网络不可用、网络带宽不足、网络延迟大,基于云计算的模式无法满足需求,这是边缘计算覆盖的领域。中国边缘计算产业联盟(EdgeComputingConsortium,ECC)定义边缘计算是指将网络、计算、存储和应用核心容量集成在网络边缘的开放平台,以满足敏捷连接、实时业务、数据优化和应用智能的关键需求。因此,为了在边缘计算中部署人工智能应用程序,必须有一个高性能、低功耗的超级计算平台。NVIDIA最近发布的JetsonAGXXavier在边缘计算场景中部署人工智能应用的利器。

  嵌入式超级计算机JetsonAGXXavier可用于加速制造、物流、零售、服务、农业、医疗等行业的智能化发展,为智慧城市的发展做出贡献。

  02

  Xavier硬件架构特性

  Xavier是最新一代NVIDIA嵌入式行业领先Linux高性能计算机,主要包括8核NVIDIACarmelARMv8.264位CPU,512核心由8个多流处理器组成Volta架构的GPU,支持并行计算语言CUDA10、支持多精度计算,FP16计算能力为11TFLOPS(每秒浮点运算次数),INT8为22TOPS。64个Tensor核心,16GB256位LPDDR4x,双深度学习加速器(DLA)引擎,NVIDIA视觉加速器引擎,高清视频编码器,Xavier集成的VoltaGPU,具体参数如表1所示,GPU图1所示的架构。

  用户可以根据应用程序的需要进行配置Xavier工作在10W,15W和30W有多种工作模式的模式,JetsonAGXXavier能效比其前身JetsonTX2比于10倍,性能超过20倍。

  Xavier内置的TensorCore支持混合精度计算。下面的融合乘法加法可以完成:执行两个4*4FP16矩阵相乘,将结果添加到4*4FP16或FP在32矩阵中,最终输出新的44*4FP16或FP32矩阵。在训练和推理过程中,深度神经网络最耗时的卷积操作可以转化为上述矩阵乘法,TensorCore计算效率大大提高。

  Xavier具有两个NVIDIA深度学习加速器(DLA)引擎可以通过深度神经网络的高性能推理来计算,其结构如图2所示。DLA具有高达5TOPSINT8或2.5TFLOPSFP16计算性能,功耗仅为0.5-1.5W。DLA支持加速CNN层,如卷积、反卷积、激活函数、最小/最大/平均池化、局部响应归一化和全连接层。

  03

  Xavier的软件平台

  Xavier支持深度神经网络推理,主要用于边缘计算Caffe,Tensorflow,PyTorch导出各种深度学习框架的模型。为了进一步提高计算效率,还可以使用TensorRT利用计算图优化、算子融合、量化等方法,优化训练模型。Xavier通过TensorRT使开发人员能够充分利用它GPU中的Tensorcore和DLA计算模块,如单元。

  04

  Xavier推理性能评价

  4.测试平台参数

  为了测试Xavier目标检测算法用于推理性能GeForce840M,JetsonTX2和Xavier测试三个计算平台。JetsonTX默认工作MAXP_CORE_ARM模式,Xavier默认工作MODE_15W模式。表2描述了三个计算平台的关键技术参数,如图3所示。

  4.2FasterR-CNN介绍目标检测算法

  我们利用FasterR-CNN测试目标检测算法Xavier推理性能。FasterR-CNN是FastR-CNN和RPN(区域候选网络)的整合。RPN使用全卷积网络(FCN,fully-convolutionalnetwork)生成检测候选框的任务端到端训练可以同时预测目标的边界和分数。这里的使用是基于VGG16的FasterR-CNN网络,其算法的主要流程如4所示。FasterR-CNN卷积网络的结构主要包括:①13个conv层:kernel_size=3,pad=1,stride=1;②13个relu层:激活函数,不改变图片大小;③4个pooling层:kernel_size=2,stride=2;pooling层会使输出图像为输入图像的1/2;

  4.介绍试验结果

  测试时在TensorRT给出示例代码sampleFasterR-CNN.cpp在上面找到推理函数,在它之前和之后添加时间函数gettimeofday(),计算其推理时间。时间平均值在不同的硬件平台上重复五次