你知道世界上第一台自動駕駛汽車出自哪一年嗎?
早在 1986 年,一輛由卡內基梅隆大學(Carnegie Mellon University)開發的雪佛蘭廂式貨車,可以說是無人駕駛汽車的先驅了。
雖然樣子看起來很粗糙,但是貨車已經有自動駕駛的關鍵系統,比如安裝了攝影機和雷射測距儀,貨車內部還有好幾台超級電腦。
40 年過去了,如今市面上已經有大量商用的輔助自動駕駛的汽車了,但離我們理想中的完全自動駕駛還有一點距離,所以即使是現在,自動駕駛技術依然很有很多成長空間。
那自動駕駛技術背後到底涉及什麽 IT 技術呢?又有哪些技術痛點?今天就來好好聊一聊。
一、自動駕駛研發背後所需的技術
什麽是自動駕駛?
我們人在開車的時候,需要用眼睛看清周圍路況,大腦再根據看到的路況做出相應的決定,做出決定後,人體的四肢來完成這個動作,從而控制汽車的行駛。
那自動駕駛作為一個替代人類駕駛汽車的技術,它也是需要完成我們人類所做這些事情。
自動駕駛汽車有三大系統: 「 感知-決策-執行 」,分別對應人類的「 眼睛-大腦-四肢 」三種人體部位。
事實上,自動駕駛也是有等級區別的,美國汽車工程師協會(SAE)對自動駕駛技術定義了六級自動化級別。
可以說 L2 級到 L3 級是一個明顯的分界點:從輔助駕駛向自動駕駛過渡。
自動駕駛等級與算力、數據量的關系
自動駕駛技術不僅需要強大的算力,也需要容納海量數據的儲存系統。自動駕駛等級越高,意味著所需要的算力、數據量是越多的。
不同自動駕駛的級別,所需要算力和數據量的統計圖,如下:
可以見得, 自動駕駛級別越高,數據量和計算力都是暴漲的 ,這就需要 IT 服務提供商具備強大的計算和儲存海量數據的能力了。
二、自動駕駛 AI 算力解決方案
自動駕駛技術研發基於大量的仿真測試、深度學習,需要強大的計算能力。
AI 計算技術隨著產業升級也是隨之演進的,目前整個AI 計算技術的演進歷程如下圖:
GPU 目前已成為 AI 訓練和推理計算最主流和成熟的計算加速方案。但是在面對上億級別參數規模的 AI 模型訓練所需算力要求,僅依靠單台 GPU 伺服器已加無法滿足超大規模 AI 模型訓練的算力要求, 多機多卡 GPU 分布式訓練成為必然選擇 。
GPU 分布式訓練最佳化更像是一個 IT 系統工程,它涉及到計算、網路、儲存硬體層面,也包括數據並列、模型並列、GPU 參數同步通訊的演算法和軟體實作層面。
GPU 分布式訓練最主要的效能瓶頸關註點:「通訊墻」 和 「IO墻」 。
這次談談我關註的戴爾科技,戴爾科技在 IT 工程領域積累了 20 多年的技術積累, 戴爾科技雖然不是做自動駕駛的,但是戴爾科技是支持自動駕駛研發的。
自動駕駛是邊緣計算的典型場景,這就需要強大的邊緣計算伺服器。目前 NVIDIA 認證的企業級邊緣伺服器一共有51款, 其中僅戴爾一家就占據了 31 款,高居榜首。
戴爾科技在 AI 計算領域提出了很多領先行業的解決方案,所以這次揭秘一下戴爾科技是如何解決 GPU 分布式訓練兩大效能瓶頸。
戴爾科技 AI GPU 分布式訓練解決方案
針對 AI GPU 分布式訓練,戴爾科技從 IT 系統工程的角度,結合計算、網路、儲存硬體最佳化以及框架軟體層面的最佳化,從端到端角度為使用者提供整體的 AI GPU 集群架構設計與分布式訓練最佳實踐。
接下來,重點看看戴爾科技的單節點計算效能最佳化,以及是如何打破 「通訊墻」 和 IO墻」的。
單節點計算效能最佳化
GPU 伺服器單機效能最佳化是集群效能最佳化的基礎,針對 AI GPU 計算場景要求,戴爾科技近幾年釋出了多款專門針對 GPU 計算設計和最佳化的加速伺服器。
其中,有兩款專業最佳化的 GPU 伺服器: PowerEdge R750xa 和 PowerEdge XE8545 ,這兩款伺服器都是 NVIDIA 認證的企業級邊緣伺服器。
PowerEdge XE8545
PowerEdge XE8545 是一款為最佳化最新行業技術而打造的 2 路 4U 系統,可對計算效能進行大幅加速。它適用於開發、訓練和部署先進的機器學習模型,為復雜的高效能計算工作負載加速,或者托管加速的虛擬化服務。
XE8545 架構設計簡潔且高效,CPU、GPU、IO 之間盡量直連,充分保障資料通訊以及 IO 傳輸效能,還有更多具體的特性,具體可以去官方詳細了解:基於 NVIDIA 處理器對 PowerEdge 伺服器的支持。
下圖為 PowerEdge XE8545 內部架構圖以及外觀。
實際落地時,PowerEdge XE8545 部署的 GPU 分布式訓練的效能如下圖:
使用 6 台 Dell PowerEdge XE8545,24 卡 A100 構建的 GPU 集群,分布式訓練效能實作 88%-96% 的線性加速比。
PowerEdge R750xa
PowerEdge R750xa 是一款 2U 空間支持支持 4 張雙款 GPU 的加速伺服器,可為要求最為苛刻新興工作負載和高密集 GPU 工作負載而設計提供出色的效能。
R750xa 支持豐富的 GPU 選項,支持多大 8 個 NVME SSD 硬碟,提供 NVME 硬體 RAID 卡保護機制,還有更多具體的特性,具體可以去官方詳細了解:基於 NVIDIA 處理器對 PowerEdge 伺服器的支持。
實際落地時,Dell PowerEdge R750xa 構建 GPU 構建的計算集群的效果如下圖:
Dell PowerEdge R750xa + A100 GPU 構建的計算集群, 2 台和 4 台 R750xa 進行分布式訓練,計算效能分別為單台伺服器的 1.96 倍和 3.63 倍 。
打破 「通訊墻」 和 IO墻」
為了打破 AI GPU 分布式訓練過程中的「通訊墻」 和 IO墻」,戴爾科技分別用了兩項黑科技解決了這兩個效能瓶頸:
三、自動駕駛海量數據解決方案
自動駕駛行駛過程中,會產生大量的數據。
這些數據都是研發依賴的數據,而且數據的檔數量可達到億級別的數量。
那面對自動駕駛產生的海量數據,如何儲存、管理、使用、防護呢?有什麽好的解決方案呢?接下來就從這四個方面,帶大家看看戴爾科技的解決方案。
戴爾科技海量數據儲存解決方案
針對自動駕駛領域的海量數據儲存的場景,戴爾科技提出 Dell PowerScale Isilon 儲存解決方案。
這套解決方案深受世界各地的汽車行業的認可,排名前 20 位的汽車供應商中有超過 70% 的供應商使用 由 OneFS 作業系統提供支持的 Dell Isilon(儲存系統) 。
戴爾科技的這套儲存解決方案,有四大優勢:
如何管理數據?
戴爾科技有一套專為自動駕駛研發客製的後設資料管理平台(DMS),這是一個軟體平台,它是可以針對自動駕駛管理所有後設資料。
如何並列存取同一份數據?
戴爾科技的儲存系統是可以 多協定並列存取 的,比如支持 IPv4 、 IPv6、SMB、FTP、NFS、NDMP、HDFS、HTTP、REST 等等。
無論使用哪一種協定把數據寫到儲存系統,都可以使用其他協定從儲存系統裏讀取數據,這樣不同的工作負載就只需要讀寫同一個儲存系統,可以極大地簡化和整合工作流,提高靈活性。
如何對數據做好安全防護?
自動駕駛研發的數據非常寶貴,並且帶有敏感的地理資訊。戴爾科技的儲存系統在數據安全方面做了很多支持: 支持對數據的審計、多租戶功能、許可權控制、快照功能、WORM(一寫多讀)、防病毒、防勒索 。
四、戴爾科技端到端 AI 基礎解決方案
戴爾科技 AI 解決方案的全景圖如下,戴爾專註於 AI 平台就緒解決方案和 AI 基礎架構,官方也提供了具體的解決方案,詳見:
最後總結一下,戴爾科技自動駕駛研發基礎架構解決方案的三大特點