作者 |?劉佳藝
隨著 L2+自動(dòng)駕駛逐步滲透,行業(yè)向高階自動(dòng)駕駛發(fā)起新一輪進(jìn)攻。
整個(gè)算法架構(gòu)也隨之不斷演進(jìn):
從獨(dú)立模型過(guò)渡到多任務(wù)學(xué)習(xí);從傳感器數(shù)據(jù)后融合到前融合;從規(guī)則主導(dǎo)轉(zhuǎn)變?yōu)?a class="article-link" target="_blank" href="/tag/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/">深度學(xué)習(xí);…
另外,端到端成為各車(chē)企、Tier1 繞不開(kāi)的技術(shù)關(guān)鍵詞。
比如理想發(fā)布「端到端+VLM」的全新模型架構(gòu),打出快慢系統(tǒng)的組合拳,能讓 AI 做出擬人化的駕駛行為。
而這些模型性能的進(jìn)階,是基于底層開(kāi)發(fā)工具鏈足夠強(qiáng)大。
具體要求是,能夠向更高效的網(wǎng)絡(luò)設(shè)計(jì)與算法優(yōu)化不斷靠攏。
這是 NVIDIA 的優(yōu)勢(shì)。
在近期《汽車(chē)之心·行家說(shuō)》NVIDIA 專(zhuān)場(chǎng)中,作為全球領(lǐng)先的 AI 計(jì)算助推者,以自動(dòng)駕駛開(kāi)發(fā)平臺(tái)和數(shù)字孿生仿真平臺(tái)等推動(dòng)行業(yè)發(fā)展,具體包括以下內(nèi)容:
提供多傳感器數(shù)據(jù)融合與同步傳輸,實(shí)現(xiàn)快速感知與準(zhǔn)確決策的相機(jī)全鏈路方案;
打造高效并行計(jì)算、實(shí)時(shí) AI 推理于一體的軟件開(kāi)發(fā)平臺(tái) NVIDIA DriveOS?;
強(qiáng)算力且算力靈活調(diào)配,集成多種智能汽車(chē)功能的車(chē)載計(jì)算平臺(tái) NVIDIA DRIVE Thor?;具備先進(jìn)渲染技術(shù),提供高逼真虛擬環(huán)境進(jìn)行模型訓(xùn)練、測(cè)試與驗(yàn)證的數(shù)字孿生平臺(tái) NVIDIA Omniverse?;
……
這一整套軟硬件耦合的開(kāi)發(fā)體系,貫穿從數(shù)據(jù)處理到仿真訓(xùn)練的全過(guò)程,在此基礎(chǔ)上,開(kāi)發(fā)者們能夠高效進(jìn)行研發(fā)任務(wù),并實(shí)現(xiàn)超越預(yù)期的高性能表現(xiàn)。
而如何熟悉并快速上車(chē)這一系列工具,突破自動(dòng)駕駛的開(kāi)發(fā)瓶頸,在《汽車(chē)之心·行家說(shuō)》NVIDIA 專(zhuān)場(chǎng)中,NVIDIA 及麗臺(tái)科技的技術(shù)團(tuán)隊(duì)對(duì)此做出了細(xì)致解答。
01?聚焦 Multicast 應(yīng)用,打造相機(jī)全鏈路方案
NVIDIA 專(zhuān)為自動(dòng)駕駛打造了一套基礎(chǔ)平臺(tái) NVIDIA DriveOS,使汽車(chē)能夠高效處理海量傳感器數(shù)據(jù),利用深度學(xué)習(xí)實(shí)現(xiàn)對(duì)環(huán)境的感知與適應(yīng),并滿(mǎn)足嚴(yán)格的安全標(biāo)準(zhǔn)。
從針對(duì) Drive Thor 打造的軟件堆棧示意圖上,可以看到從底層傳感器設(shè)備開(kāi)始,到硬件系統(tǒng),以及軟件系統(tǒng),形成了一套緊密耦合的開(kāi)發(fā)架構(gòu)。
在軟件部分,包含一系列重要組件,比如 NVStreams、NvMedia、NvSIPL Drivers 等,它們的作用在于快速、準(zhǔn)確抓取傳感器圖像數(shù)據(jù)并進(jìn)行優(yōu)化處理,這其中要經(jīng)過(guò)一連串硬件引擎來(lái)幫助數(shù)據(jù)轉(zhuǎn)化成對(duì)應(yīng)格式。
例如,從相機(jī)抓住的圖像幀,經(jīng)過(guò)硬件引擎——ISP(圖像信號(hào)處理器)完成處理,然后傳輸給 VIC(視頻輸入控制器)引擎進(jìn)行視頻化操作,最后傳輸給顯示器。
由此,對(duì)于復(fù)雜的相機(jī)全鏈路,往往包含大量復(fù)雜的數(shù)據(jù)信息,如何把這些硬件引擎有效串聯(lián),實(shí)現(xiàn)信息傳輸成為一個(gè)挑戰(zhàn)。
這其中就涉及到兩個(gè)重要組件,一個(gè)是 NVStreams,另一個(gè)是 NvSIPL。
- 前者能夠?qū)?shù)據(jù)流水線(xiàn)各部分串聯(lián),實(shí)現(xiàn)數(shù)據(jù)的無(wú)縫傳輸,以及不同引擎之間的協(xié)同工作;后者能夠初始化和配置圖像傳感器,高效采集數(shù)據(jù),進(jìn)行圖像預(yù)處理等工作。
有這兩個(gè)組件作為基礎(chǔ)支持,可以實(shí)現(xiàn) Multicast 的強(qiáng)大應(yīng)用。
所謂 Multicast,指的是一個(gè)參考應(yīng)用程序,它展示了使用 NVIDIA DriveOS SDK(包括但不限于 NvMedia SIPL、NVStreams、CUDA 和 TensorRT)構(gòu)建相機(jī)全鏈路并實(shí)現(xiàn)無(wú)縫數(shù)據(jù)傳輸的端到端解決方案。
在 Multicast 應(yīng)用場(chǎng)景上,支持跨進(jìn)程、跨線(xiàn)程、跨 SoC 等多種復(fù)雜的通信方式。
從跨進(jìn)程示例中可以清晰看到,生產(chǎn)者進(jìn)程中有兩種數(shù)據(jù)源,分別來(lái)自真實(shí)采集與虛擬數(shù)據(jù),到達(dá)消費(fèi)者進(jìn)程后,數(shù)據(jù)會(huì)進(jìn)行多種處理方式,比如通過(guò) VIC 模塊轉(zhuǎn)變圖像格式到達(dá) CUDA 模塊進(jìn)一步處理,或者通過(guò) CUDA 模塊修改圖像數(shù)據(jù)后傳輸?shù)较掠?Encoder 模塊進(jìn)行編碼等。
事實(shí)上,由于各車(chē)企、Tier1 的產(chǎn)品特性、工具需求各不相同,這要求 Multicast 必須滿(mǎn)足擴(kuò)展性強(qiáng),靈活性高的特點(diǎn)。
由此,Multicast 的核心設(shè)計(jì)思想為兩個(gè)字,分層。
從上到下,依次是展示層、業(yè)務(wù)層、傳輸層,其中,展示層扮演指揮者角色,負(fù)責(zé)構(gòu)建數(shù)據(jù)流水線(xiàn)并管理整個(gè)系統(tǒng)的生命周期;業(yè)務(wù)層則是將數(shù)據(jù)放到對(duì)應(yīng)模塊中進(jìn)行格式轉(zhuǎn)化;最后傳輸層負(fù)責(zé)鏈路建立與數(shù)據(jù)通信。
由于采用分層設(shè)計(jì),各層級(jí)各司其職,能減少產(chǎn)生任何數(shù)據(jù)、業(yè)務(wù)方面的耦合,從而適用于更復(fù)雜的數(shù)據(jù)處理鏈路。另外,利用 Multicast 還能有效檢測(cè)出系統(tǒng)中潛在的性能問(wèn)題,幫助系統(tǒng)快速完成優(yōu)化。
值得一提的是,Multicast 在自動(dòng)駕駛應(yīng)用領(lǐng)域能夠釋放出諸多特性,比如:
- Stitching(圖像拼接),將多傳感器數(shù)據(jù)拼接在一起傳輸給顯示器;Car detection(車(chē)輛檢測(cè)),能夠?qū)鞲衅鳈z測(cè)到車(chē)輛數(shù)據(jù)準(zhǔn)確畫(huà)框標(biāo)識(shí);DP MST(多流傳輸),對(duì)多通道的傳感器數(shù)據(jù)進(jìn)行處理后傳輸?shù)讲煌@示器上;Late attach(后期連接),在某個(gè)特定的流程或系統(tǒng)運(yùn)行的后期階段進(jìn)行連接或附加操作;Multiple element(多元素處理),多個(gè)輸出輸入端口,實(shí)現(xiàn)數(shù)據(jù)的靈活處理;Sc7(待機(jī)模式),采用低功耗模式優(yōu)化系統(tǒng)啟動(dòng)時(shí)間;Sentry mode(哨兵模式),在停車(chē)模式下傳感器對(duì)車(chē)輛周?chē)闆r進(jìn)行實(shí)時(shí)檢測(cè),將數(shù)據(jù)進(jìn)行脫敏處理后上傳到顯示器。
NVIDIA Multicast 這套強(qiáng)大、靈活的應(yīng)用程序,貫穿了車(chē)輛在自動(dòng)駕駛、泊車(chē)領(lǐng)域的多個(gè)維度設(shè)計(jì),其開(kāi)放、可擴(kuò)展性強(qiáng)的特點(diǎn)能夠讓各車(chē)企、Tier1 開(kāi)發(fā)者們實(shí)現(xiàn)便捷、高效的定制化服務(wù)。
02?端到端技術(shù)浪潮下,完成 DRIVE Thor 的高效部署
端到端給自動(dòng)駕駛領(lǐng)域點(diǎn)了一把火,這種全新架構(gòu),對(duì)數(shù)據(jù)、算力、算法三駕馬車(chē)提出了嚴(yán)苛要求。
由此,繼 NVIDIA DRIVE Orin? 在自動(dòng)駕駛領(lǐng)域得到廣泛應(yīng)用后,NVIDIA 又推出了新一代車(chē)載計(jì)算平臺(tái) Drive Thor,從底層工具鏈上引領(lǐng)行業(yè)向高階自動(dòng)駕駛遞進(jìn)。
不同于以往的?NVIDIA?Ampere?架構(gòu),Drive Thor 基于全新?NVIDIA Blackwell 架構(gòu),誕生出了全新特性:
- 針對(duì) LLM/VLM 應(yīng)用進(jìn)行優(yōu)化,最高達(dá)到 2000TOPs 的 FP4 算力;Tensor 推理引擎更新到 10.x 版本,進(jìn)行更好的圖優(yōu)化策略;采用 L2 Tiling&Chaining 技術(shù),實(shí)現(xiàn)更好優(yōu)化與性能加速效果;引入靈活 GPU 調(diào)度方案,能夠支撐起端到端+VLM 的架構(gòu)設(shè)計(jì);
……
實(shí)際上,從特性回溯,可以看到 Drive Thor 是完全適用于端到端模型的計(jì)算平臺(tái)。之所以在各維度上得到優(yōu)化與提升,是因?yàn)樗枰獞?yīng)對(duì)更復(fù)雜、非結(jié)構(gòu)化的大量場(chǎng)景,這是一個(gè)不斷迭代的過(guò)程。
- 自動(dòng)駕駛以往面臨傳統(tǒng)常規(guī)道路,模型參數(shù)可以壓縮到最小,只需要 10x TOPS 的算力;而面對(duì)一些施工道路的非結(jié)構(gòu)化場(chǎng)景,采用的是搭載 Orin 平臺(tái)的 BEV&Transformer 架構(gòu)設(shè)計(jì),減少了對(duì)高精地圖的依賴(lài),需要 100x TOPs 算力;面臨隨機(jī)性強(qiáng)的執(zhí)法場(chǎng)景,算力需求又提升到一個(gè)新的量級(jí),到達(dá) 1000x TOPS,才能把「端到端+VLM」這類(lèi)「通用能力」模型跑起來(lái)。
另外,Drive 平臺(tái)對(duì)大模型的支持情況已經(jīng)覆蓋全面,從 Drive Orin 的廣泛應(yīng)用中,可以明確看到無(wú)論是 LLAMA、GPT 還是國(guó)內(nèi)百川大模型等,都能釋放出不錯(cuò)性能。
理想已經(jīng)應(yīng)用了「端到端+VLM」的雙系統(tǒng)智駕方案,由端到端模型擔(dān)任快系統(tǒng),能夠快速接收傳感器輸入,并直接輸出行駛軌跡用于控制車(chē)輛,應(yīng)對(duì)駕駛車(chē)輛時(shí) 95% 的常規(guī)場(chǎng)景。
剩下 5% 的復(fù)雜場(chǎng)景,如臨時(shí)施工、交通管制等,由「VLM」的慢系統(tǒng)實(shí)現(xiàn),它能夠進(jìn)行深入理解產(chǎn)生邏輯思考,最后輸出決策信息給快系統(tǒng)。
雙系統(tǒng)相互配合,從而確保了自動(dòng)駕駛能高效處理多數(shù)場(chǎng)景,并覆蓋復(fù)雜路況。
當(dāng)然,要駕馭這套模型架構(gòu),算力平臺(tái)不僅要有充足的算力儲(chǔ)備,還需要支持靈活配置「算力調(diào)度」策略。
在執(zhí)行端到端任務(wù)時(shí),優(yōu)先級(jí)往往更高,對(duì)于算力調(diào)度需要及時(shí),而在處理低速一些極端場(chǎng)景時(shí),優(yōu)先級(jí)更低。同樣,在進(jìn)行一些座艙交互、娛樂(lè)功能時(shí),就可以把自動(dòng)駕駛占用的 GPU 讓出來(lái)。
這種算力調(diào)度的需求落地,在 NVIDIA Drive Thor 上能被充分滿(mǎn)足,并提供了兩種方案。
第一種是 MIG 方案,對(duì)算力、L2 cache、帶寬進(jìn)行切分,實(shí)現(xiàn) ADAS/LLM 域的「硬隔離」,不同任務(wù)在運(yùn)行時(shí)相互獨(dú)立,不受干擾。
第二種是 GPU 分時(shí)調(diào)度方案,實(shí)現(xiàn) ADAS/LLM 域的「軟隔離」,應(yīng)用上可以獨(dú)占片上算力、帶寬。正如「端到端+VLM」方案上,在不同行車(chē)場(chǎng)景時(shí)賦予不同任務(wù)優(yōu)先級(jí),從而實(shí)現(xiàn)算力的靈活調(diào)度。
除了支持這類(lèi)模型架構(gòu),NVIDIA 自己也搭建了一套 Model room,其中包含車(chē)道檢測(cè)、多模塊設(shè)計(jì)等相應(yīng)組件,NVIDIA 都做了深度優(yōu)化,用戶(hù)可以在優(yōu)化組件基礎(chǔ)上構(gòu)建出自己的大模型方案。
目前,Model room 已經(jīng)支持 10+個(gè)純視覺(jué)模型、2 個(gè)視覺(jué)+激光模型,以及一個(gè)端到端模型。在優(yōu)化層面做了 INT8 精度量化、4:2 結(jié)構(gòu)化稀疏、量化稀疏 finetune 等推理訓(xùn)練??梢钥吹剑琈odel room 在當(dāng)前純視覺(jué)方案基礎(chǔ)上,已經(jīng)可以做到比開(kāi)源的視覺(jué)基線(xiàn)要更好一些。
而對(duì)于端到端這種全新架構(gòu),在模型部署上必然會(huì)面臨一些新挑戰(zhàn)。以上海 OpenDriveLab 提出的 UniAD 架構(gòu)為例,相比 BEV & Transformer 架構(gòu),它在 perception 基礎(chǔ)上增加了 TrackFormer、Motion Former、OccFormer 和 Planner 等相應(yīng)組件,中間通過(guò) QKV 機(jī)制進(jìn)行通訊。而從 SparseDrive 公布的端到端架構(gòu)中,把建圖感知與規(guī)劃預(yù)測(cè)分為兩個(gè)模塊,中間進(jìn)行信息傳遞,對(duì)于 Transfomer 結(jié)構(gòu)依然存在一定依賴(lài)。
所以,可以把端到端架構(gòu)特點(diǎn)總結(jié)為四點(diǎn):
- 更多的 transformer 結(jié)構(gòu) (特別是 PNP 部分)為融合多模態(tài)信息引入很多 shortcut模型更大,結(jié)構(gòu)更深輸入量綱不統(tǒng)一
對(duì)應(yīng)的,NVIDIA 在 Thor TensorRT(10.x) 版本上引入了針對(duì)性解決方案,比如 Blackwell Flash Attention 方案、新一代圖優(yōu)化編譯引擎、L2 cache Tiling&Chaining、新的混合精度類(lèi)型等,幫助對(duì)應(yīng)結(jié)構(gòu)進(jìn)行有效優(yōu)化。
03?OpenUSD 打通數(shù)據(jù)格式,利用 Omniverse 構(gòu)建數(shù)字工廠
自動(dòng)駕駛模型建設(shè)離不開(kāi)仿真環(huán)節(jié),作為自動(dòng)駕駛開(kāi)發(fā)領(lǐng)域中的重要一環(huán),它需要和其它環(huán)節(jié)有機(jī)結(jié)合在一起,形成一個(gè)數(shù)據(jù)驅(qū)動(dòng)閉環(huán)。
這就要求,仿真軟件需要具備強(qiáng)大的兼容性,并且能夠構(gòu)建出高質(zhì)量場(chǎng)景庫(kù),泛化出更多場(chǎng)景。
NVIDlA Omniverse 平臺(tái)集成了 NVIDlA 20 余年的技術(shù)結(jié)晶,在自動(dòng)駕駛仿真領(lǐng)域以及汽車(chē)數(shù)字工廠建設(shè)上,都迸發(fā)出強(qiáng)大勢(shì)能。
首先,NVIDlA Omniverse 平臺(tái)基于 OpenUSD 這一技術(shù)基礎(chǔ)。它是一種統(tǒng)一數(shù)據(jù)格式,能夠把傳統(tǒng) CAD、Python 等不同的軟件語(yǔ)言全部兼容轉(zhuǎn)化成一種語(yǔ)言,然后將數(shù)字資產(chǎn)全部轉(zhuǎn)化到 NVIDlA Omniverse 平臺(tái)進(jìn)行下一步的可視化作業(yè)。
這個(gè)強(qiáng)大應(yīng)用進(jìn)行生態(tài)打通后,可以釋放出多種特性:
- 聯(lián)接多樣化工具,包括 AR、VR、DCC 等各種類(lèi)型的軟件工具及數(shù)字資產(chǎn);利用多種工具實(shí)現(xiàn)定制化工作流程;分層化設(shè)計(jì),實(shí)現(xiàn)多人協(xié)同工作,并不局限于一種平臺(tái)生態(tài)。
除了 OpenUSD 之外,NVIDlA 還擁有光追渲染的 NVIDIA RTX? 技術(shù)、加速計(jì)算能力以及生成式 AI 等技術(shù)儲(chǔ)備,都集成在 NVIDlA Omniverse 平臺(tái)中。
在自動(dòng)駕駛仿真領(lǐng)域,基于 OpenUSD 的數(shù)據(jù)格式場(chǎng)景,Omniverse 平臺(tái)可以將大模型對(duì)接進(jìn)來(lái),實(shí)時(shí)生成可視化數(shù)據(jù),展示碰撞報(bào)告等,在此過(guò)程中,還可以對(duì)虛擬場(chǎng)景進(jìn)行多維度設(shè)置,比如車(chē)速、自然天氣、極端情況等,從而高效幫助模型進(jìn)行優(yōu)化,節(jié)省人力、物力成本。
在建設(shè)數(shù)字工廠領(lǐng)域,Omniverse 平臺(tái)通過(guò)虛擬場(chǎng)景的提前驗(yàn)證與排查,改進(jìn)生產(chǎn)線(xiàn)的效率問(wèn)題。
在通用汽車(chē)案例中,就通過(guò) Omniverse 平臺(tái)構(gòu)建了統(tǒng)一的數(shù)據(jù)工作流程,開(kāi)發(fā)者可以在原有熟悉的軟件中進(jìn)行設(shè)計(jì)作業(yè),并且通過(guò) OpenUSD 與 Omniverse 平臺(tái)完成實(shí)時(shí)協(xié)作,進(jìn)而減少數(shù)據(jù)傳導(dǎo)時(shí)間,簡(jiǎn)化工作流程。
更具體一些,A 同事在對(duì)汽車(chē)模型進(jìn)行調(diào)整,包括位置移動(dòng)、布線(xiàn)擺放等;B 同事通過(guò) UE 對(duì)場(chǎng)景進(jìn)行搭建及紋理生成,C 同事在 Omniverse 平臺(tái)中進(jìn)行實(shí)時(shí)渲染和查看,三者操作可以實(shí)時(shí)進(jìn)行,一旦發(fā)生問(wèn)題可以及時(shí)反饋解決。
這意味著,工作流程基于 Omniverse 平臺(tái)得到重新構(gòu)建,以往是以往是從建模軟件到材質(zhì)軟件,再到仿真軟件的層層過(guò)渡,現(xiàn)在所有軟件通過(guò)統(tǒng)一 USD 格式,完成實(shí)時(shí)的審查、協(xié)作以及評(píng)審工作。
這種降本增效能力直接反饋到數(shù)據(jù)增長(zhǎng)上,比如寶馬建設(shè)全球虛擬工廠規(guī)劃及運(yùn)營(yíng),實(shí)現(xiàn)設(shè)計(jì)凍結(jié)時(shí)間節(jié)省了 98%,計(jì)劃進(jìn)程速度提升了 30%;奔馳打造虛擬裝配線(xiàn),實(shí)現(xiàn)建設(shè)時(shí)間縮短兩倍,能耗上節(jié)約了 20%。
實(shí)際上,Omniverse 不僅是工具,而是一個(gè)開(kāi)發(fā)平臺(tái)。它需要多人協(xié)同,一同將這個(gè)框架擴(kuò)展的更加完整,生態(tài)更加豐富。
總之,一個(gè)理想的工具鏈需滿(mǎn)足的核心要求是,高效。
自動(dòng)駕駛級(jí)別越往上走,開(kāi)發(fā)難度成指數(shù)級(jí)增長(zhǎng),高效二字變得越來(lái)越難實(shí)現(xiàn)。
但 NVIDIA 憑借多年技術(shù)累積,打造出一系列穩(wěn)定、可靠的軟硬件工具箱,無(wú)論是解決信息傳輸問(wèn)題的相機(jī)全鏈路方案,還是比 Drive Orin 性能更進(jìn)階的 Drive Thor,亦或者集成 20 年經(jīng)驗(yàn)的數(shù)字孿生 Omniverse 平臺(tái),都從不同維度按下了研發(fā)的「加速鍵」。
由此,自動(dòng)駕駛開(kāi)發(fā)者們能夠更加專(zhuān)注于技術(shù)的創(chuàng)新與突破,而不必為繁瑣的工具鏈問(wèn)題所分心。
*與 NVIDIA 產(chǎn)品相關(guān)的圖片或視頻(完整或部分)的版權(quán)均歸 NVIDIA Corporation 所有。