自动驾驶感知推理端——Jetson AGX Xavier

时间:2024-03-19 15:52:44

参考:http://m.elecfans.com/article/909055.html

一、硬件平台

xavier配置:

自动驾驶感知推理端——Jetson AGX Xavier

     Xavier是最新一代NVIDIA业界领先的嵌入式Linux高性能计算机,主要包括一个8核NVIDIA Carmel ARMv8.2 64位CPU,由8个流多处理器组成的512核Volta架构的GPU,支持并行计算语言CUDA 10,支持多精度计算,FP16计算能力为11 TFLOPS(每秒浮点运算次数),INT8为22 TOPS。64个Tensor核心, 16GB 256位LPDDR4x,双深度学习加速器 (DLA)引擎,NVIDIA视觉加速器引擎,高清视频编解码器,Xavier集成的Volta GPU,用户可根据应用需要配置Xavier工作在10W、15W和30W的模式,凭借多种工作模式,Jetson AGX Xavier的能效比其前身Jetson TX2高出10倍以上,性能超过20倍。xavier架构图:

自动驾驶感知推理端——Jetson AGX Xavier

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

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

自动驾驶感知推理端——Jetson AGX Xavier

 

二、软件平台

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

       Xavier平台配备了完整的 AI 开发软件包NVIDIA JetPack SDK,包括最新版本的 CUDA、cuDNN 和 TensorRT等软件。

三、性能测试

      为了测试Xavier的推理性能,我们使用目标检测算法分别在GeForce 840M、Jetson TX2和Xavier三个计算平台上进行测试。Jetson TX2工作在默认的MAXP_CORE_ARM模式,Xavier工作在默认的MODE_15W模式。三个计算平台的关键技术参数如下表所示。

自动驾驶感知推理端——Jetson AGX Xavier

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

     测试时在TensorRT给出的示例代码sampleFasterR-CNN.cpp上找到推理函数,在其前后添加时间函数gettimeofday(),计算其推理时间。在不同的硬件平台上重复实验五次取时间平均值,结果如下表所示。

自动驾驶感知推理端——Jetson AGX Xavier

       从实验结果表可以看出来,Xavier在使用TensorRT进行推理时,性能相比Jetson TX2提升了不少。需要注意的是Xavier使用的TensorRT版本相比TX2版本在软件架构上有很大的变化,特别是结构性更好。