NEWS

性能炸裂?Jetson AGX Orin性能评测

2022-04-01 source:米文动力

开箱视频呢,估计大家已经看过不少了。我们怎么都得整点新的。

我们希望看完这个帖子,你的以下疑问,可以得到解答。

Orin的CPU有多强?

Orin的AI性能是不是真的那么猛?

Orin比Xavier到底强了多少?

WechatIMG997.jpeg

WechatIMG999.jpeg


概述

为了让大家更好的理解Orin的性能,我们先看一下Orin和其他几颗特定芯片的对比。

WechatIMG990.jpeg

由于Camel是NV魔改的CPU,这次再次回到公版的IP,推测是之前的魔改并没有在产品层面形成差异,进而获取超额利润。还不如沿用公版,毕竟还能有GPU的部分能来进行差异化(之前试图收购ARM估计也是基于这个判断)。人人都有成为水果的心没错,但不是人人都这个能力和场景,回归脚踏实地也挺好。


根据坊间猜测,Camel相当于ARM的Cortex A75,而按照ARM的路线图,则为A75【4】 -> A76【5】 -> A77【7】 -> A78【3】【7】,按照经验的估计,我们有几个估计。


分析1. 4代架构的单核性能提升,应该在50%左右。


分析2. 而因为核数量增加了50%(8 -> 12),其多核性能的提升,应该在100%左右(因为主频降低了)。


分析3. 同时相比M1 Pro,由于主频差距为60%,因此单核性能在最理想的情况下,也只会是M1 Pro的60%。


让我们看看是否真的如我们所预计的一样。


CPU

虽然Jetson AGX Orin的AI性能规格很炸裂,但对于自主机器领域,CPU的性能,才是Jetson系列一直的瓶颈。


首先我们看单核性能。即使在cuda的加持下,单核性能对于视觉处理的延迟,点云和图像的对准延迟,slam的闭环计算等,仍然有着较大的影响。可以看出,相比Xavier,Orin的单核性能,有了37%的增长,非常可期。

1.jpeg

2.jpeg


然后我们看多核性能。多核性能对于多线程的slam,和多进程的机器人系统,多任务切换则影响更大。可以看出,Orin的多核性能,提升非常多,提升了89%。


那Orin作为一个ARM SOC,在ARM SOC的生态里面能处于什么位置呢?我们派出Apple的M1系列进行参战。本以为Orin毫无悬念的被吊打,但结果

3.jpeg

4.jpeg

单核性能被M1吊打。


我们注意到,M1 Pro的主频要比Orin的CPU高了60%。Orin作为一颗为汽车设计的SOC,在目前的工艺上,主频不能太高。毕竟对于温度,安全性等方面的要求更高。


但即使刨去主频的影响,我们可以看到,单核的性能仍然要距离M1相差50%,待优化空间还很高。


多核性能超越M1。

这点让我们非常的意外。虽然核心数量比M1要多50%,但即便如此,仍然体现出来Orin的调度优化效果(毕竟主频差60%啊!)。这也意味着对于多任务的机器人系统来说,Orin有着很大的发挥空间。


从上面的数据可以看到:

分析1:只增加了37%,误差比较大。

分析2,基本命中,提升了89%。

分析3,失败,单核性能还不到M1的50%。


AI性能

接下来到了我们的重头戏了。AI算力从32T,升级到275T,有谁会不关心呢?

如果我是个学生,只要我说服导师掏钱,AI性能瞬间提升8倍,项目顺利交付,再也不用为性能发愁,世界是多么的美好!啦啦啦~

5.jpeg

但是醒醒,你不会之前都没有注意到这行小字吧?Sparse!惊不惊喜,意不意外?开不开心?

有意思的是,Xilinx有篇博文【1】,里面提到:Sparsity is powerful because it can theoretically improve system performance by up to 2X. (嘿嘿,2X是理论值)Also, the theoretical performance improvement usually cannot be implemented in a practical system, so take any performance claims with a grain of salt. (理论值一般无法在实际系统中得到,所以要对这些宣称的性能得半信半疑。)


如果我用Nvidia推荐的网络是否可以达到理论宣称的性能呢?

对不起,是不行的。


NV给出的官方文档【2】里面,在Batch = 8的时候,性能是Dense的1.1倍,提升了10%。就想看最后数据怎么圆。


如果我不在乎是否真的能够达到理论值,是否可以直接有Sparse模式来提升性能呢?

对不起,也是不行的。

需要重新炼丹。参考NV的官方文档【2】。


有没有觉得很酸爽?我是万万没想到在TOPS的概念以后还能加一个Sparse的buff。本来以为是考算数,结果还要考阅读理解啊!


平复了一下内心的波澜,回过头再想想,虽然没有8倍,毕竟还是有接近4倍这么多嘛。并且软件可以无缝和现有Xavier结合,加量不加价!换掉双Xavier等还是没有问题的。于是我们的算法同事含着激动的泪水,刚把常见的几个算法跑了一下,供大家参考!

6.jpeg

以上是通过https://github.com/NVIDIA-AI-IOT/jetson_benchmarks项目得到的结果。由上可见。在部分算法上,如vgg-19,是可以直接达到Xavier 3倍左右的性能的。如果要完全发挥Orin的性能,应该需要通过多batch来进行了。


这和Orin的规格也是可以匹配的,因为从规格上,Orin的算力是靠CUDA核数量的增加而增加的,但对于单个CUDA核的性能,理论上的增量也只有1倍。因此,在低batch的时候,很多模型体现出来的性能增加非常有限。毕竟GPU的主频没有进一步的提升。


但是这个特性和机器人场景是可以匹配的,在机器人场景中,普遍存在多个算法并存的情况,此时Orin的2048个GPU核,才有了充分的用武之地。


小结

Orin的CPU有多强?

整体来说,不论是CPU还是GPU,Orin比Xavier的确提升了很多。多核跑分甚至超过了M1的Macbook!真的是很意外!这对于一直为CPU资源担心的客户是一个很大的福音。


Orin的AI性能是不是真的那么猛?

AI的性能没有想象中提升得多,但也有2倍以上的提升。并且软件栈基本不需要进行修改,扔掉双Xavier,拥抱Orin吧!


Orin比Xavier到底强了多少?

CPU单核性能提升37%

CPU多核性能提升 89%。

AI没有想象中的8倍,需要使用大Batch才能充分发挥性能。


最后

作为Nvidia的忠实的合作伙伴,我们一直致力于给用户提供更好的服务。严谨是米文动力工程师文化中非常重要的部分。因此,一方面我们为Orin在性能上的提升而喝彩,另一方面,我们也希望能够让用户对Orin能够有客观的评价,真正提供有价值的信息,来帮助到用户。

目前米文动力各个岗位都在进行招聘,非常欢迎看好AI和边缘,并且追求高效严谨的同事加入,请戳这里➡️米文动力招聘经理、工程师、管培生 | 北京、上海、无锡(https://mp.weixin.qq.com/s/26e77cwTaL4HO10xtoKJtw)

参考文献:

【1】https://www.xilinx.com/about/blogs/adaptable-advantage-blog/2022/Sparse-vs-Dense-TOPS.html

【2】https://developer.nvidia.com/blog/accelerating-inference-with-sparsity-using-ampere-and-tensorrt/

【3】https://www.arm.com/zh-TW/products/silicon-ip-cpu/cortex-a/cortex-a78ae

【4】https://en.wikipedia.org/wiki/ARM_Cortex-A76

【5】https://en.wikipedia.org/wiki/ARM_Cortex-A77

【6】https://en.wikipedia.org/wiki/ARM_Cortex-A77

【7】https://en.wikipedia.org/wiki/ARM_Cortex-A78

【8】https://www.nvidia.com/en-us/data-center/ampere-architecture/