探寻 NVIDIA 的自动驾驶发展之路
2022-11-29 12:14
在近日举行的联想创新科技大会(Lenovo Tech World 2022)上,NVIDIA 中国区软件解决方案总监卓睿与多位业内专家就未来汽车技术和产品的发展趋势展开了对话交流。卓睿回顾了 NVIDIA 在自动驾驶业务的发展历程,并分享了 NVIDIA 的经验总结与思考。以下为内容概要。
左一:NVIDIA 中国区软件解决方案总监 卓睿
右一:联想集团副总裁车计算负责人 唐心悦
右二:联宝科技 CEO 丁晓辉
右三:清华大学博导车辆学院副院长 李升波
右四:黑莓 QNX 中国区总经理 董渊文
从专业图形到汽车
NVIDIA 驶入无人驾驶领域
无人驾驶是充分展现 AI 实力的试金石
NVIDIA 开展自动驾驶业务的探索要从 2006 年说起。
2006 年,NVIDIA 推出革命性的 CUDA 架构,并应用于显卡中,同时还提供了 CUDA SDK。CUDA 是一种用于通用 GPU 计算的革命性架构,使科学家和研究人员能够利用 GPU 的并行处理能力来应对最复杂的计算挑战。现在,无论在高性能计算的企业计算领域,还是在个人身边的最为热门的软件,都可以利用 GPU 或者显卡来为其提速。对于企业来说,这是一场革命,我们可以看到成千上万基于 CUDA 的包括地质勘探、医学、数学、生命科学、金融、流体力学等运算,CUDA 通过 GPU 加速比原来高性能的 PC CPU 加速提速几十甚至上百倍。
2012 年,AlexNet 在 ImageNet 竞赛中以超过第二名 10.9 个百分点的绝对优势一举夺冠,深度学习和卷积神经网络一举成名。自此,深度学习的相关研究越来越多,行业也公认 2012 年是 AI 和深度学习神经网络技术爆发的起点。
在此之后,NVIDIA 基于 CUDA 技术支持业界流行的 TensorFlow、PythonTorch 等典型训练框架,助力 AI 在不同领域的研发和落地。
在探索过程中,NVIDIA 发现无人驾驶是最复杂的一个 AI 应用场景。如今,L2 级自动驾驶相对更为流行,但以车辆为主导的 L3/L4 级等高级别驾驶对 AI 来说更具挑战,这也是 NVIDIA 深入无人驾驶行业的动力。
NVIDIA 很早就认识到,AI 是由数据驱动的。而无人驾驶不只局限于 AI 本身,也需要考虑到嵌入式的 SoC。在做无人驾驶之前,NVIDIA 在 SoC 上有多年累积的经验,比如在手机、平板电脑、游戏盒子等应用领域都有所涉猎,因此有快速启动的基础和条件。2016 年,NVIDIA 推出了第一款汽车相关的 SoC 产品——Parker,这也是 NVIDIA 无人驾驶征程的开始。
无人驾驶最关键的是功能安全,但 NVIDIA 发布的第一代 Parker 更多是基于 Linux 打通数据链路,例如摄像头获取数据后的前处理和推理等,把这个环节打通,但欠缺真正的功能安全。
NVIDIA 在 Parker 之后带来了下一代产品 DRIVE Xavier。DRIVE Xavier 有超过 90 亿个晶体管,是全球第一个达到 ISO 26262 安全认证的复杂 SoC。由全球主要标准化机构——国际标准化组织制定的 ISO 26262 是道路车辆系统、软件和硬件功能安全领域中最具权威性的国际标准,要求计算系统能避免、识别并解决故障。为了达到这一标准,一款系统级芯片不仅需要有在运行时检测到硬件故障的架构,开发时还要注意减少潜在的系统故障。这意味着它必须尽可能地避免故障,即使在无法避免的情况下也能检测到故障并有所反应。
NVIDIA 的认证主要分为两部分:SoC 认证,以及在此之上的 DRIVE OS 认证。DRIVE OS 本身基于 QNX 的 QOS 而集成,整个芯片和 DRIVE OS 作为 SEooC 都可以满足 ISO 26262 的功能安全标准,达到功能安全评级 ASIL- B。
在这个过程中,NVIDIA 也在优化功耗。对于无人驾驶来说,AI 并不是全部,比如一些传统的 CV(计算机视觉)算法也是非常重要,因此后来我们也加入了 PVA(Programmable Vision Accelerator),可编程视觉加速器,通过 API 加速各种 CV 算法,以满足低功耗的需求。另外,GPU 虽然非常灵活,但 GPU 本身从能耗比来说表现还不是最好,所以 NVIDIA 又加入了 DLA(Deep Learning Accelerator),深度学习加速器,DLA 的设计方案,它的性能功耗比就非常好,这也是之后 NVIDIA 计算平台的标配。目前,NVIDIA 用 GPU +PVA+DLA 相结合的方式,帮助客户能够更加灵活地将不同算法部署在不同引擎上,以达到更好的功耗比和性能表现。
从去年开始,很多中国车企都采用了 NVIDIA DRIVE Orin SoC。作为 DRIVE Xavier 的下一代产品,DRIVE Orin 在算力方面有巨大提升。随着无人驾驶的要求从基本的 NCAP 到 ADAS ,再到 L2+ 以及 L3 级以上,算力的需求也更加迫切。除算力之外,内存瓶颈也时常发生。最终,DRIVE Orin Soc 的算力达到 254 TOPS,内存带宽被设定在 205GB/s,可以支持车载设备和传感器 4 个 10G bps 的网络接口,以及 H.265/HEVC/VP9 格式的 4K@60Hz 视频编码或者 8K@30H z 视频解码。
在功能安全方面,跟 Xavier 一样,NVIDIA 一直是按照最高标准去作为产品要求。DRIVE Orin 符合 ISO 26262 的功能安全标准,达到最高的功能安全评级 ASIL-D。目前 DRIVE Orin 也是全球领先的车规级 SoC,在全球领先的 30 家电动汽车制造商中,有 20 家选择 DRIVE Orin 作为首选的 AI 计算平台。
NVIDIA DRIVE Orin SoC
除了产品的优势外,NVIDIA 的快速发展还得益于它广泛且生机勃勃的合作伙伴生态。NVIDIA 在中国有很多合作伙伴,涵盖众多一级供应商、软件合作伙伴、摄像头厂商、传感器厂商等。作为平台型公司,NVIDIA 与合作伙伴一同赋能车企,助力他们能够基于 NVIDIA 产品快速开发企业专属的无人驾驶软件栈,加速自动驾驶汽车的开发和部署。
长板做长,特色做精
无人驾驶时代,NVIDIA 的“制胜法宝”
三位一体,让算力得到充分应用
现今,不管是车端还是其它 AI 相关领域,算力越来越多地被提及。特别是今年 9 月 GTC 大会上,NVIDIA 推出了新一代 SoC 、预计 2025 年量产上车的 DRIVE Thor。大算力是 NVIDIA 在自动驾驶市场上的“制胜法宝”吗?大算力是一个参数指标,如何让客户更好地用好这些算力,是一个更核心的诉求,也是 NVIDIA 一直努力的方向。如果谈到 NVIDIA 在自动驾驶市场上的竞争策略,我们可以从以下三个层面去理解:
建立强大的软件生态
如何更轻松地使用算力,是每家 AI 公司都会遇到的问题。我在前面也提到,NVIDIA 于 2006 年推出 CUDA,然后在 CUDA 的基础上构建推理框架 TensorRT。
NVIDIA TensorRT 是一个高性能的深度学习计算平台。它包括深度学习计算优化器和运行加速器,可以为深度学习计算应用程序提供低延迟和高精度的计算。在 TensorRT 平台上建立的应用程序比 CPU 平台的应用程序运算速度快 40 倍。使用 TensorRT,客户可以优化在所有主框架中培训的神经网络模型,最后部署到超大规模数据中心或汽车产品平台。
不管是服务器端还是车端,NVIDIA 的所有 SDK 是通用的,都能够用同样的 API 帮助客户从训练端到推理端做迁移。全球了解 CUDA 和 TensorRT 的开发者非常多,这也帮助我们建立起了技术的“护城河”。引用 NVIDIA 创始人兼首席执行官黄仁勋一直在表达的观点,NVIDIA 不是芯片公司,而是软件公司。软件公司能够提供好的软件生态,能够赋能开发者和车企,这是 NVIDIA 非常看重的一件事。
强大的 SoC 芯片
无人驾驶需要用到很多传感器、摄像头、毫米波雷达和激光雷达,需要通过不同的接口接入到整个域控制器,将数据传到芯片里,进行快速的处理。芯片本身需要有很多引擎接口,以确保整个流程能够满足低延迟、实时性的要求。这是 NVIDIA 从另一维度,即在 SoC 的角度加入更多引擎。结合 QNX 功能安全,同时满足信息安全这些行业标准之后, NVIDIA 能够帮助客户将更多时间用于算法的研发上,而不在底层平台上。
提供端到端解决方案
最后也是最关键的一点,NVIDIA 不只是 SoC 供应商,更是端到端解决方案供应商。
首先,AI 是数据驱动型的,采集数据之后开发算法,离不开强大、开放的大算力服务器平台。例如,NVIDIA DGX 服务器平台可以让客户在平台上轻松开发算法、提取数据。此外,之前我也提到过,NVIDIA SDK 支持业界流行的训练框架,因此客户可以用 Docker 方式开发自己的算法。
NVIDIA DRIVE Sim
其次,无人驾驶是非常复杂的工程,如果不对所开发出的算法进行大量仿真,那么车端应用便不具备充足的安全功能性。NVIDIA Omniverse 平台能够提供非常好的底层仿真环境,基于 Omniverse 的 DRIVE Sim 可以帮助客户构建一个物理属性准确的仿真平台,快速、高效地进行大规模的自动驾驶汽车测试和验证。
另外,在仿真过程中,也会涉及到有效数据获取的问题。有些数据可能非常容易获取,而有些数据则很困难。比如,时间特别短的黄灯数据或是路面上的小障碍物数据,在大部分情况下很难通过人工方式采集到。可是自动驾驶需要解决长尾场景的问题。NVIDIA 的仿真平台可以在生成这些复杂的合成数据的同时,结合真实数据让算法更加完美,以支持不同的应用场景。
最后,客户也可以通过 DRIVE Sim 仿真平台,借助域控制器支持路测。从开发、训练、测试,到自动驾驶车辆或域控制器的量产,NVIDIA 可从多个维度、端到端地帮助客户快速迭代,共同加速软件定义时代的到来。
点击“阅读原文”,了解更多关于 NVIDIA 自动驾驶汽车解决方案的内容。
推荐阅读
一文读懂 NVIDIA DRIVE:“软硬结合”的全栈解决方案