03
生态:构建自己的王牌
针对自动驾驶场景算法和需求专门设计的专用芯片实现在效率上的更高效只是地平线追赶英伟达的第一步。更难的是构建地平线自己好用的软件体系,以及能支撑持续演进迭代的用户生态——这正是英伟达的王牌所在。
“历史上,英伟达正是靠工具链登上了AI王座,并建立了强大的生态护城河。”地平线生态发展与战略规划副总裁李星宇向《电动汽车观察家》表示,“地平线在成立之初就建立了工具链团队,那个时候我们有一种直觉,未来工具链将成为我们与合作伙伴协同创新的基础。
同时,整个行业正在演进到数据驱动的软件2.0时代,地平线也提供端上的开发工具、以及在云端的训练,包括数据管理以及仿真平台等工具(AIDI 艾迪),与天工开物形成完整的开发平台,加速面向智能驾驶、智能交互、车内娱乐应用等各种各样的解决方案开发。”
3.1天工开物“追“CUDA
如今,英伟达GPU成为云端人工智能加速的主流解决方案。究其原因,并非英特尔、高通、ARM等芯片公司的算力不够,而是在软件方案上缺乏如CUDA一般完整的编程工具链。
构建完整、完善、好用的编程工具链需要长时间和海量的资金投入和技术积累,而英伟达CUDA抢跑了十多年的时间。
早在2006年问世之初,英伟达就开始对CUDA系统在AI领域进行大力投入和推广。一方面在年营业额只有30亿美元的情况下,每年投入5亿美元的研发经费更新维护CUDA;另一方面,为当时美国大学及科研机构免费提供CUDA系统的使用,使其迅速在AI及通用计算领域开花结果。
作为后来者,地平线的天工开物目前显然无法在完整性上与英伟达CUDA体系相比,不过在针对AI和端侧需求,天工开物已有不少亮眼的表现。
地平线天工开物开发平台
“地平线的工具链,尤其是其中的模型转换工具和编译器,可以自动完成对模型的量化和编译优化,通过自动化通用的算法,将模型快速部署在芯片上, 运行效率高,精度损失小。”罗恒向《电动汽车观察家》表示。
AI模型不仅要在云端完成训练,能够输出高精度的结果,还需要被量化以部署应用。
所谓模型量化是将浮点存储(运算)转换为整型存储(运算)的模型压缩技术。
模型在训练过程中会使用浮点,AI芯片在推理时为了面积功耗的节省通常使用8bit整型数计算。这样浮点训练的模型需要进行量化,转换到8bit整型来计算。
量化,可使模型在运行时存储开销和带宽需求更少、更快的计算速度、更低的能耗与占用面积,得以部署到限制更多,对速度要求更快的端侧。
但在量化过程中会产生数据溢出和精度不足舍入错误。
对此,2017年,与张量核一道,英伟达推出了量化工具TensorRT,实现从模型获得,到模型优化与编译,再到部署的全过程。地平线天工开物也有类似的量化工具,而且对比测试中,地平线对轻量化/小型化AI模型的量化精度,要好于英伟达的TensorRT。
地平线与英伟达TensorRT的量化性能测试 出处:地平线
因为TensorRT要覆盖云端、端侧等多个场景下的模型量化,而天工开物则针对性更适宜部署在端侧的模型——采用适用于视觉识别的卷积神经网络。
从2012年到2017年,卷积神经网络经过了快速发展,识别精度已经非常高,但“体积”也非常大。2018年,AI模型训练的工作量相比五年前增长了30万倍,研究机构使用的模型参数已达到万亿级。
大模型带来高性能的同时,也导致在云端效率低、评估成本高,在端侧难以部署的问题。于是,业界开始寻求在同样的精度下做“减法”:
其一,对训练好的复杂模型通过知识蒸馏、通道剪枝、低比特量化(浮点计算转成低比特定点计算)等手段对模型进行压缩,降低参数量和计算量。
英伟达2019年发布的安培架构中的一大提升便是张量核增加了对模型部分参数为0时的稀疏矩阵计算的支持。
其二:深度可分离卷积/深层卷积(depthwise separable convolution)代替普通的卷积,形成小规模/轻量化模型,如SqueezeNet、MobileNet、ShuffleNet等。
但小模型在量化的过程中会出现精度损失的问题。对此,地平线在2017年便就设计出了量化训练算法以解决Depthwise模型精度损失的问题,并申请了专利。而直到2019年,谷歌才推出相应的量化算法。
而且基于对算法的持续追踪,地平线已经标定出了一个潜在的“终极答案”——2019年“减法”模型的集大成者EfficientNet。地平线认为其标志着卷积神经网络结构的演进暂时进入一个平缓发展的阶段。
EfficientNet能够很好的平衡神经网络的深度、宽度和分辨率这三个核心维度,通过一组固定的缩放系数统一缩放这三个维度。
地平线对征程5和Xavier、Orin(估算)的FPS测试便是以EfficientNet为测试模型。在上述测试中,地平线较之英伟达量化精度更高的模型也是MobileNet、EfficientNet这样的轻型/小型模型。
目前,地平线在工具链方面已经支持了100多家的客户。
3.2艾迪“追”Drive
除了与芯片高度结合的工具链,另一大软件体系的竞争是在与车用高度结合的开发工具方面。
2017年自Xavier芯片开始正式进入智能/自动驾驶端侧场景之后,英伟达立刻开始着手完善加强端到端的自动驾驶和车用功能解决方案:Drive系列。
英伟达Drive系统
在英伟达统一的计算架构(Xavier/Orin/Atlan)之上,建立了自动驾驶家开发平台Drive Hyperion,自动驾驶模块化软件栈Drive SDK,仿真平台Drive Sim,和深度学习训练平台Drive DGX四个产品。
汽车客户可在DGX上进行自动驾驶感知、规划、控制的模型训练和优化;在Sim的虚拟仿真环境中模型和算法的验证;在Drive SDK的“软件货架”中挑选适合自己的软件“组装”功能和应用;并利用Hyperion进行数据采集和验证开发。
Drive SDK包含中OS基础软件平台、和向开发者开放的works中间件、AV /IX自动驾驶/智能座舱软件栈。
开发者可对调用、组合、开发抽象封装在DriveWorks中的摄像头、毫米波雷达、激光雷达、GPS和IMU等传感器功能,针对自动驾驶的典型使用场景和Corner Case场景开发了多种丰富的神经网络,构建计算密集型算法进行物体检测、地图定位和路径规划。
而基于Drive AV/IX提供的基础应用功能,开发者可拆解、组合出符合自身的新功能和产品能力。
地平线艾迪开发工具平台
与英伟达Drive相对的是地平线艾迪AI软件产品开发及迭代一站式工具平台。其能够为智能汽车AI开发者提供海量数据存储、处理能力,半自动化/自动化标注能力,大规模分布式训练及模型管理能力和自动化分析、处理产品问题等能力。
值得注意的是,艾迪不仅面向地平线的芯片,还可对接其它芯片,差别只在模型部署阶段有所不同。
“开发者围绕关键场景的问题挖掘,模型迭代全流程的自动化,可以大幅改善算法的研发效率,而且可以开放的对接到各类的终端上面。通过这种方式,大大提升了算法研发人员的研发效率。”地平线高级研发总监凌坤表示。
3.3开放构建地平线生态
在硬件高度服务于软件,开发模式从过去的人工定义变为数据驱动的软件2.0时代。软件体系是地平线最难追上英伟达的部分,却也是要真正追上英伟达的必经之路。
体量小、起步晚、还造着更贵、受众更窄的专用型AI芯片,地平线要如何在讲究生态体系建设的软件领域追赶英伟达?
答案是比开放的英伟达更开放。
Mobileye、英伟达、地平线的开放程度
一方面是覆盖更广泛的市场区间。
地平线的芯片产品体系覆盖从L2级到L4级的智能/自动驾驶需求。征程2主要适配面向L2级的辅助驾驶领域,征程3可适配面向L2+的高速领航辅助驾驶,征程5可适配更具挑战的复杂城区辅助驾驶。
而目前,英伟达Xavier/Orin的落地大多是从高端车型的高速领航辅助驾驶开始,并且以城区驾驶辅助为短期目标的。
由此,双方芯片的上车规模便产生了相当的差距。
地平线汽车客户,截至2022年4月
截止目前,已公布搭载地平线征程芯片的有长安UNI-T/K/V、奇瑞蚂蚁、广汽埃安AION Y、2021款理想ONE、哪吒U·智等15款车型以上,当中不乏月销过万的爆款车型。基于此,地平线征程芯片出货量已突破100万片,与超过20家车企签下了超过60款车型前装量产项目定点。
相比之下,主力搭载英伟达Xavier的小鹏相关车型累计销售12万辆左右。
英伟达汽车客户,截至2022年3月底
更多出货量意味着更多的真实场景数据和应用需求,这是软件系统体系不断提升完善的根本“原料”。“我们把客户看到的问题、想法,在发挥创造性上面遇到的阻碍,反过来帮助我们改进和提升天工开物工具链,这套千锤百炼的工具链就可以更好的提升效率。”凌坤表示。
另一方面,则是集众人之力,加大开放深度和广度。
“地平线提供了一种新的合作范式,就是极致的开放与共创,我们努力做的是与上下游的合作伙伴打造一个生态合作的热带雨林。我们相信:一个公司的价值在于他在创新生态里是否被需要。”李星宇向《电动汽车观察家》表示。
英伟达基于自身的GPU开发出系统级芯片(SOC),并与CUDA操作系统强绑定,业界在此基础上开发自动驾驶的软硬件系统。
地平线则在开发完成BPU和其上的SOC之后,将底层软件通过开源OS协同开放的模式与整车企业共享,使开发者能够深入操作系统底层,高效地调用操作系统之下地各种资源。
地平线在去年发出倡议,结合征程5芯片,为智能汽车去打造一个开放、开源、行业广泛参与的操作系统——TogetherOS。目前为止,地平线已与长安、长城等多家国内主机厂开始联合开发。
地平线整体产品服务体系
今年,地平线创始人余凯又宣布不仅仅是开源OS,地平线将向部分整车厂开放BPU IP授权。就此,地平线形成三类开放共赢的商业模式:
· 一是提供BPU和SoC级别征程芯片以及操作系统OS,帮助车企完成自动驾驶软硬件系统开发;
· 二是提供BPU和SoC级别芯片,整车厂采用自研操作系统开发自动驾驶软硬件系统;
· 三是提供BPU IP,支持车企实现SoC自研并采用自研操作系统和自动驾驶软硬件系统实现整车开发。
在此模式下,整车开发将实现从芯片到操作系统、再到自动驾驶的软硬件系统的高度协同,极大提升迭代速度。
作为AI芯片和软件工具的提供商,底层开发程度越高,意味着基于车企越多的自主性,由此推动其实现产品和功能的快速迭代——这正是当前智能汽车竞争的核心指标。由此无疑将为地平线吸引来更多的客户和合作方。
这是机会,但也是成本。开放度越高,也意味着开放者为应用者要提供的适配资源和成本更高。
如Mobiveil首席执行官Ravi Thummarukudy所说:“要将IP提供给市场需要成本,一旦客户取得授权并开始将之整合到SoC,为该IP提供支持就会成为经常性支出。”
不只是IP,仅仅在征程5的上车过程中,地平线为客户提供的配套适配服务的深度和周到程度,就是英伟达这样的外资跨国多业务企业无法实现的。
从推出CUDA算起,英伟达在AI领域已布局16年之久,更是在2015年便开始与特斯拉这样的智能汽车领军企业开始合作,其技术壁垒之高,生态护城河之广,都可以想象。
如今,中国已经成为全球智能汽车的角斗场。很幸运,地平线以中国市场为起点,开始这场艰苦卓绝的追赶。
地平线软硬结合的技术路线+共创开放的商业模式,能否在多年之后创造出以小胜大,以弱胜强的“逆袭“故事,只待时间给出答案。
内容参考:
《新AlphaGo首度揭秘:单机运行,4个TPU,算法更强》量子位
《你知道的,为了更快》arcsin2
《英伟达研究报告:从硬件GPU设计到软件CUDA+ Omniverse开发》东吴证券
《AMiner人工智能芯片研究报告》2018清华-中国工程院知识智能联合实验室
《自动驾驶CNN算法最新进展,视觉和语言建模有望统一》汽车人参考
《张量的概念及基本运算》 ChihYuanTSENG
《摸着ARM过河,地平线开放BPU IP授权的商业模式有未来吗?》与非网
《专访杜克大学陈怡然:英伟达开源Xavier DLA,AI 芯片创业公司被挤压?》雷锋网
《英伟达GPU架构演进近十年,从费米到安培》 Will Zhang
《深度学习模型权重数值精度FP32,FP16,INT8数值类型区别》千与编程
《FP64, FP32, FP16, BFLOAT16, TF32, andother members of the ZOO》Grigory Sapunov
《模型量化详解》技术挖掘者
《浅谈深度学习GPU算力飞跃的背后,英伟达CUDA的关键性押注》
《开放BPU IP授权 | 地平线的模式有未来吗?》与非网
——END——
原文标题 : 地平线追击英伟达