如何优化图神经网络架构或者软件架构来提高硬件的效率(英伟达芯片功耗高,效率就不会很突出)?

8月26日,由盖世汽车主办的“2021行业首届智能汽车域控制器创新峰会”于上海汽车城瑞立酒店隆重召开。本次会议持续两天,将围绕智能汽车、智能驾驶域控制器、智能座舱域控制器、底盘及车身域控制器、智能驾驶计算平台、电子电气架构、软件定义汽车、车规芯片等行业焦点话题展开。会议期间,超星未来联合创始人兼首席技术官梁爽博士发表了《基于软硬件协同优化的高能效自动驾驶计算平台》的主题演讲。

大家好,感谢盖世汽车给我们提供这样一个平台,在这里跟大家分享一下我们的思考。刚才很多同行更多讲到了域控制器的全局和在商业上技术上的发展,我在这里讲的可能会更深入一点,更多会讲计算平台如何提升计算效率。

现在智能驾驶圈非常热闹,智能驾驶技术在越来越多的领域里面加速落地,包括在封闭、半封闭场景里面,像港口、矿区,无人环卫车都在加速落地,在日常生活中也越来越多见到。像干线物流、末端配送等公开道路场景的很多头部玩家已经走向上市环节了,还有在复杂城市道路场景的Robotaxi厂家,以及L4自动驾驶的演示,已实现了在复杂路况场景下长时间无人接管的方案。除此以外,无论是乘用车还是,新车型的智能化程度也越来越强大。包括很多具有很强AI属性的大厂和创业公司也纷纷进入这个赛道里,汽车领域未来是人工智能重要的落地方向之一。

我们对智能驾驶系统也做了一些统计和分析,我们把具备L2+辅助驾驶功能的量产乘用车和L4车辆做了一个对比。可以看得到,随着激光雷达逐步出现,包括成本的下降,慢慢这些智能化车辆上都开始逐步装配起激光雷达的方案,L2+感知系统的传感器配置和L4系统配置逐步缩小差距。

另外,我们可以看到的是,不单单是在感知算法,包括在定位,甚至决策的算法上面都开始越来越多运用到数据驱动型的算法,包括常见的卷积神经网络,这就带来了计算应用系统上的复杂度越来越高。

(PPT内容)右上角是未来域控由分布式方案逐渐延伸到集中式方案,产品差异更多是由软件应用层的定义来形成差异,这就对中央计算单元提出了非常高的需求。

我们现在看到,算力的军备竞赛已经掀起来了,包括今年5月GTC上英伟达发布业内首款1000TOPS的SOC,这相比Tesla FSD单芯片算力72TOPS算力提升超过一个数量级。我们看到国内也有超过国外玩家的趋势,比如说地平线J5最高128TOPS,黑芝麻A1000P,106TOPS上个月刚刚宣布完成流片,这从计算平台角度来讲也是提供了更丰富和更可靠的选择。

从计算平台的角度上需要思考一个问题:是不是我们解决智能驾驶系统计算平台的支撑,只能通过芯片堆叠来实现呢?我们认为,芯片的算力本质上对于智能驾驶系统还是必要不充分的条件。虽然大家都知道要实现更好的系统需要更多的算力,但是现在大家更多提的算力是峰值算力,其实芯片计算的效率,我们经常会看到一个优化程度不好的芯片宣称有10T算力,实际跑出来的应用等效只有3-4T的算力,所以我们会认为计算平台设计不单单是算力问题,而是一个非常复杂的需要进行系统优化设计的问题。

这里列出来的图是清华电子系高能计算组对目前业内常见芯片方案进行的整理,整体趋势是同种类别芯片在同等工艺条件下能效比(单位瓦特)下实现的算力指标基本上在1个指标线上,没有太大的浮动,这就是说,如果需要更多的算力就需要支付更多的功耗。

车的场景是受限的场景,以L2+域控为例,它的功耗需要控制在30-40瓦范畴之内,即便上水冷把功耗放到大几百瓦、上千瓦,那对于电池作为动力能量源的车辆来讲,对续航影响也是非常明显的。

那么做计算平台本质上是硬件和功耗等资源受限条件下优化的问题,有点像带着镣铐跳舞的状态。我们面临着越来越复杂的系统,还需应对越来越复杂且快速迭代的传感器,手头有的其实是受限的资源,如何实现让计算平台——方便部署,高的能效以及安全可靠就成为非常有意思的话题。

我们认为,应对这样一个难题的技术方式,还是以软硬件协同的手段来实现。我们是围绕神经网络计算加速处理为核心,从软件协同的角度上通过模型压缩、结构搜索的方式来优化出甚至设计出对于硬件更为友好的模型,包括除开神经网络之外其他计算进行定制化加速,大幅度降低在CPU这些通用单元的算力开销,缩短计算平台处理的延迟。处理完所有能效优化基础上还会在基础软件环境上去做优化,以及最终有一个异构计算平台把软硬件技术承载起来,开放提供给客户。

首先介绍一下我们的高级别自动驾驶计算平台,这是今年5月份在北京发布的一款方案。它能够支持多路传感器接入和处理,最高支持20路4K相机,3路千兆网口接入和12路CAN-FD。在中间计算配置方案上是采用英伟达Xaiver SOC满足算力需求,同时引入异构方案FPGA和MCU,在满足用户算力需求的同时应对除开神经网络之外其他的计算需求。同时在功能安全上也做了大量的工作,我们还会提供完善的驱动、基础软件环境及工具链,真正让用户做到即插即用,我们现在也跟很多客户实现了多种车型、多种级别、多个场景下自动驾驶计算平台的应用。

这是硬件计算平台Roadmap,今年5月这一款30P相较30有了更高的提升,其实在硬件设计上也是考虑到英伟达下一代方案,能够提供500T,进行了预留的设计,来满足客户更大的需求。

从硬件架构层面设计来讲,我们也是考虑功能安全的设计,在MCU上做了一系列,包括对于计算平台状态的监测以及算力芯片上的冗余。整个硬件层面上也做了DFMEA分析及确保不同故障情况下给出合适的应对方式。

在基础软件环境上面把AUTOSARAP和AUTOSARCP部署在计算平台之上,我们也自研了NOVA-Drive基础软件环境,支持异构系统协同工作。而且也是遵循ISO26262设计,基于ASPICE流程进行量产开发。

这里也要确保软件系统可靠性,提供配置和调试工具,支持多种硬件和软件平台,包括应对传感器和计算单元时钟同步,能够实现纳秒级同步精度,以及在故障诊断方面做了全面故障的分析工具,确保整体系统的可靠。

这是在基础软件环境下做了OTA策略,用户非常方便的使用应用软件的部署和升级,包括在OTA流程上也是设计了多种机制,确保OTA过程做到顺畅并且可靠,而且我们能够利用397SWAP特性,实现应用配置上一键切换,满足一部分客户的特殊需求。

最开始提到的问题是应对受限的硬件资源,有大量算法和复杂应用需要在硬件上部署。针对算法部署问题,通常做法是拿到自己的算法,通过算法工程师或者找有算法经验的合作团队来帮助,针对这款硬件做一个定制化的设计。但是我们现在做到的工作是基于自动化机器学习的手段,把模型做压缩,压缩的过程做成自动化的工具,这个好处就是大幅度缩减人工的开销,并且现在做到的策略是支持多种硬件平台的适配,从而提供给不同的客户来使用。

比如说NOVA-Slim模块,我们能够做到针对于不同的硬件平台自适应调整中间压缩的策略,最终得到压缩出来的网络模型对硬件做到足够友好。目前也会跟第三方,包括芯片厂商自带的压缩对比。

另外我们也从源头做起,做了一些前沿性的工作,其实本质上来讲,我们刚才讲到模型压缩的过程其实是把模型再搜索的过程。大家要做一个模型可以通过人工经验方式做出来,但是现在大家更多尝试性工作通过机器搜索的方式,我把神经网络模型中常见的算子放到一个池子里面去,通过机器搜索的方式搜出来,满足我预先设定的指标要求的模型得出来,通过机器搜索的方式得出来的模型会比很多人工设计的模型,在准确率的指标和延迟指标上都能做到更好的提升。

我们在去年和清华电子系课题组联合发布了AWNAS,而且去年基于NOVA打了CVPR低功耗视觉竞赛,获得了全球第三的成绩,这个值得说的是,在378家方案里面做到全球第三,我们投入算法工程师人数非常少,基本上是依赖这套自动化工具实现的这个成绩。

目前我们能做到自动驾驶的点云,视觉类的感知的算法能够做到非常好的压缩比率,并且对不同的硬件平台都有一些案例。

另外我们关注到的趋势,激光雷达在逐步上车,激光雷达点云的感知算法也越来越受到重视。现在常见的算法用的比较多的,尤其是在实际场景里面,部署到嵌入式端的场景,大部分是基于二维图像的,把三维点云转换成二维鸟瞰图,再做神经计算的方式来做点云的感知,这个本身在感知效果上还是存在算法精度天花板的,目前在研究领域里面有很多基于三维点云感知的模型,但是它更多是运行在服务器上,在实际嵌入式端很少有人做这块的工作。三维点云感知算法我们进行了共性算子的提取,并且进行深入的优化,形成了兼具部署算法和部署工具的软件包提供给客户,L4和有用到激光雷达的L2+客户对这块都是非常地感兴趣。

刚才讲的更多是在神经网络部分,其实我们还会关注到其他算法,(PPT内容)左下角给出一个案例,比如说2.5D点云目标检测算法(Pointpillars)为例,我们通过把网络压缩到原来1/4,这之后CPU反而得到一个瓶颈,那我们对于这样的部分做了共性提取和定制化设计,比如说通过FPGA做IP定制优化把预处理过程做到一个数量级的延迟压缩。

(PPT内容)这里有两个案例,一个是点云目标识别预处理加速,计算延时减少出一个数量级。还有L4车辆上常见的NDT算法,车辆经常遇到信号失效情况下可能用高精度地图或者激光雷达点云进行匹配,这个算法我们也是进行了定制化的加速,从而实现用非常少量FPGA资源进而提升嵌入式CPU一个数量级性能的提升。适配Xilinx Vitis框架,方便用户快速集成,帮助客户把应用算法做到落地。

(PPT内容)这里一个案例,我们参与了北京科技冬奥,在首钢园区里面实现L4级别自动驾驶示范项目,针对两款车型,一款是小鹏G3和福田轻卡,基于我们自研的基础框架,在硬件平台上支撑起这两辆车辆在园区内L4级别自动驾驶的示范,测试里程达到7000公里。

此外基于在硬件计算平台以及软件工具上的技术,我们有跟商用车合作伙伴合作,帮助他们在干线物流L3自动驾驶、半封闭园区、L4级别自动驾驶提供支持和服务。

另外我们在NOVA-X工具链上不单单辅助于自己的平台实现更好的效果,也可以作为独立的软件产品,这个产品我们有跟头部Tier1合作,在他们量产项目。举例来说,他们之前用相对大算力的平台实现了域控方案,现在希望切换到算力指标缩短原来的1/4域控方案之上,但是不希望精度和功能上受到太大折损,那我们提供了压缩工具的授权,从而节省了非常大工程师的开销,实现非常好的效果。

最后简单介绍一下超星未来,2019年4月成立的公司,定位基于异构芯片方案之上提供软硬件计算平台的技术方案服务来服务于OEM、Tier1和解决方案商,我们目标让智能驾驶更简单。我们团队背景有清华车辆学院和清华电子系,实际上也是代表清华在自动驾驶和AI系统优化方案比较前沿的两股力量,联创团队都是以清华校友为主,团队是90多人,但是是非常具有战斗力的团队,无论是教育背景,还是工作经验程度上都是有非常好的搭配。

这是我们目前的合作伙伴,我们也是非常荣幸能够受到很多Tier1、车厂、解决方案商对于我们技术的认可,我们超星未来还是会更专注于在自动驾驶计算平台上对于计算的效率和安全可靠性上做更多深入挖掘的工作。我们也很希望对这块感兴趣的志同道合的同事一块加入把这块工作做好,大家一起让自动驾驶更简单。

以上是我的演讲内容,谢谢大家。

我要回帖

更多关于 cpu性能优化 的文章

 

随机推荐