NEWS CENTER
开箱视频呢,估计大家已经看过不少了。我们怎么都得整点新的。
我们希望看完这个帖子,你的以下疑问,可以得到解答。
Orin的CPU有多强?
Orin的AI性能是不是真的那么猛?
Orin比Xavier到底强了多少?
概述
为了让大家更好的理解Orin的性能,我们先看一下Orin和其他几颗特定芯片的对比。
由于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%的增长,非常可期。
然后我们看多核性能。多核性能对于多线程的slam,和多进程的机器人系统,多任务切换则影响更大。可以看出,Orin的多核性能,提升非常多,提升了89%。
那Orin作为一个ARM SOC,在ARM SOC的生态里面能处于什么位置呢?我们派出Apple的M1系列进行参战。本以为Orin毫无悬念的被吊打,但结果
单核性能被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倍,项目顺利交付,再也不用为性能发愁,世界是多么的美好!啦啦啦~
但是醒醒,你不会之前都没有注意到这行小字吧?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等还是没有问题的。于是我们的算法同事含着激动的泪水,刚把常见的几个算法跑了一下,供大家参考!
以上是通过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/