在今日舉行的“2022 百度云智峰會·智算峰會”上,NVIDIA 解決方案工程中心高級技術經理路川分享了以“應用驅動的數據中心計算架構演進”為題的演講,探討 GPU 數據中心的發展趨勢,以及介紹 NVIDIA 在構建以 GPU 為基礎的數據中心架構方面的實踐經驗。以下為內容概要。
應用對算力需求的不斷增長
以 GPU 為核心的分布式計算系統已經成為大模型應用重要的一環
數據中心的發展是由應用驅動的。隨著 AI 的興起、普及,AI 大模型訓練在各領域的逐步應用,人們對數據中心的 GPU 算力、GPU 集群的需求在飛速增長。傳統的以 CPU 為基礎的數據中心架構,已很難滿足 AI 應用的發展需求,NVIDIA 也一直在探索如何構建一個高效的以 GPU 為基礎的數據中心架構。
今天我將從三個方面跟大家一起探討這個話題:一,應用驅動;二,NVIDIA 最新一代 GPU SuperPOD 的架構設計;三,未來 GPU 數據中心、GPU 集群的發展趨勢 。
我們首先看下近幾年 AI 應用的發展趨勢。總體上來講,應用業務對計算的需求是不斷飛速增長。我們以目前最流行的三個業務方向為例說明。
第一個應用場景,AI 應用。我們可以從最左邊的圖表中可以看到,近 10 年 CV 和 NLP 模型的變化,這兩類業務場景是 AI 領域最流行、最成功,也是應用范圍最為廣泛的場景。在圖表中我們可以看到,CV 從 2012 年的 AlexNet 到最新的 wav2vec,模型對計算的需求增長了 1,000 倍。
NLP 模型在引入 Transformer 結構后,模型規模呈指數級增長,Transformer 已成為大模型、大算力的代名詞。目前 CV 類的應用也逐步引入 Transformer 結構來構建相關的 AI 模型,不斷提升應用性能。數據顯示在最近兩年內關于 Transformer AI 模型的論文增長了 150 倍,而非 Transformer 結構的 AI 模型相關論文增長了大概 8 倍。
我們可以看到人們越來越意識到大模型在 AI 領域的重要性,和對應用帶來的收益。同時大模型也意味著算力的需求的增長,以及對數據中心計算集群需求的增長。
第二個應用場景,數字孿生、虛擬人等模擬場景與 AI 的結合也是最近兩年的應用熱點。人們通過數字孿生、虛擬人可以更好地對企業生產流程進行管控,線上虛擬交互有更好的體驗,這背后都需要要巨大的算力資源來滿足渲染、實時交互等功能。
第三個應用場景,量子計算,也是最近幾年我們計算熱點的技術。量子計算是利用量子力學,可以比傳統的計算機更快地解決復雜的問題。量子計算機的發展還處在非常前期的階段,相關的量子算法的研究和應用也需要大量的算力做模擬支撐。
前面我們提到了 AI 大模型的業務應用,為什么要用到大模型,大模型可以給我們帶來什么樣的收益?
在右圖中我們可以看到 1.5B GPT-2 和 MT-NLG 在 150B-270B 不同參數規模下對應用精度的影響。
我們可以清楚地看到大模型對應用精度的效果,尤其是對復雜、泛化的業務場景的表現尤為突出。同時大模型在預測(inference)端正在快速發展,優化特定場景、特定行業的性能,優化預測端計算資源使用等,相信在不久的將來會有更多像 ChatGPT 一樣令人驚嘆的應用在行業落地。這都將會推動大模型基礎研究,推動對訓練大模型所需算力的建設。一個以 GPU 為基礎的分布式計算系統也是大模型應用所必須的。
AI 大模型訓練為什么要用到 GPU 集群,用到更大規模的 GPU?它能給我們的訓練帶來什么樣的收益?這邊我們用兩個實際的例子作為參考。
一個應用是 BERT 340M 參數規模,使用 Selene A100 SuperPOD 集群,訓練完成則需要 0.2 分鐘,在使用 1/2 個集群規模,訓練完成需要 0.4 分鐘,使用 1/4 個集群規模下訓練完成則需要 0.7 分鐘。我們可以看到在小參數規模下,使用幾十臺 DGX A100 也可以快速完成整個訓練任務,對于整個訓練的迭代影響并不大。
另一個是 Megatron 530B 參數規模的 NLP 大模型,訓練這個 530B 參數的大模型,使用整個 Selene SuperPOD 集群資源則需要 3.5 周、近一個月的時間才能完成,而使用 1/2、1/4 集群節點規模的情況下,則需要數月的訓練時間才能完成整個訓練,這對于大模型研發人員來說是不可接受的。另外研發人員的時間成本是非常寶貴的,研究到產品化的時間也是非常關鍵的,我們不可能把時間浪費在訓練等待上。
在管理層面,構建一個 GPU 集群,通過集群的作業調度和管理系統,可以優化調度各種類型、各種需求的 GPU 任務,使用集群的 GPU 資源,以最大化利用 GPU 集群。在 Facebook 的一篇論文中提到,通過作業調度管理系統,Facebook AI 超級計算系統上每天可以承載 3.5 萬個獨立的訓練任務。
因此,GPU 規模和集群管理對于提升分布式任務的運行效率非常關鍵。
集群的最關鍵的地方就是通信,集群任務的調試優化重點也是在使用各種并行方式優化通信策略。在 GPU 集群中,通信主要分為兩個部分,一個是節點內通信,一個是節點間通信。
在左圖中我們可以看到節點間通信 NVLink 對于它的重要性。圖中示例使用 tensor 并行的方式,在節點間分別采用 NVLink 和采用 PCIe 4.0 進行通信的對比,我們可以看到,NVLink 環境下程序的通信時間僅需 70ms(毫秒),而 PCIe 環境下通信時間則需要 656ms,當用多個節點組成的集群環境下差距會更加明顯。
在右圖中,我們使用 7.5B 的 AI 模型,采用 TPS=4,PPS=1,數據并行 DPS=64 的情況下,在 32 個集群的節點規模下,不同網卡對分布式訓練任務的影響。紫色部分代表了通信占比,綠色代表計算時間占比。我們可以清晰地看到網卡數量、網絡帶寬對分布式應用的性能的影響。
GPU 集群應用于 AI 訓練也是最近幾年才逐步在客戶中開始應用。在 AI 發展的早期,模型較小,大部分采單機多卡或是多機數據并行的方式進行訓練,所以對 GPU 集群的要求并不是很高。2018 年 11 月,NVIDIA 第一次推出基于 DGX-2 的 SuperPOD 架構,也是看到 AI 發展的趨勢,看到了 AI 應用對 GPU 分布式集群在 AI 訓練中的需求。
SuperPOD 的架構也在不斷地演進和優化。通過 NVIDIA 實戰經驗和性能優化驗證,SuperPOD 可以幫助客戶迅速構建起屬于自己的高性能 GPU 分布式集群。
NVIDIA 最新一代 Hopper GPU 架構下 SuperPod 的集群拓撲
下面我來簡單介紹下,最新一代 Hopper GPU 架構下 SuperPOD 的集群拓撲。
計算節點采用 Hopper 最新的 GPU,相比較與 Ampere GPU 性能提升 2~3 倍。計算性能的提升需要更強的網絡帶寬來支撐,所以外部的網絡也由原來的 200Gb 升級為 400Gb,400Gb 的網絡交換機可以最多支撐到 64 個 400Gb 網口,所以每個計算 POD 由原來的 20 個變為 32 個。更高的計算密度,在一個 POD 內 GPU 直接的通信效率要更高。
NDR Infiniband 網絡、AR、SHARP、SHIELD 等新的特性,在路由交換效率、聚合通信加速、網絡穩定性等方面有了進一步的提升,可以更好的支持分布式大規模 GPU 集群計算性能和穩定性。在存儲和管理網絡方面,增加了智能網卡的支持,可以提供更多的管理功能,適應不同客戶的需求。
未來數據中心 GPU 集群架構的發展趨勢:
計算、互聯、軟件
下面,站在 NVIDIA 的角度,我們再來探討一下,未來數據中心 GPU 集群的架構發展趨勢。整個 GPU 的集群主要有三個關鍵因素,分別是:計算、互聯和軟件。
一,計算。集群的架構設計中,單節點計算性能越高,越有優勢,所以在 GPU 選擇上我們會采用最新的 GPU 架構,這樣會帶來更強的 GPU 算力。
在未來兩年,Hopper 將成為 GPU 分布式計算集群的主力 GPU。Hopper GPU 我相信大家已經很了解,相關特性我在這就不在贅述。我只強調一個功能,Transformer 引擎。
在上文應用的發展趨勢里,我們也提到了以 Transformer 為基礎的 AI 大模型的研究。Transformer 也是大模型分布式計算的代名詞,在 Hopper 架構里新增加了 Transformer 引擎,就是專門為 Transformer 結構而設計的 GPU 加速單元,這會極大地加速基于 Transformer 結構的大模型訓練效率。
二,互聯。GPU 是 CPU 的加速器,集群計算的另外一個重要組成部分是 CPU。NVIDIA 會在 2023 年發布基于 Arm 72 核、專為高性能設計的 Grace CPU,配置 500GB/s LPDDR5X 內存,900GB/s NVLink, 可以跟 GPU 更好地配合,輸出強大的計算性能。
基于 Grace CPU,會有兩種形態的超級芯片,一是 Grace+Hopper,二是 Grace+Grace。
Grace+Hopper,我們知道 GPU 作為 CPU 加速器,并不是所有應用任務都適用于 GPU 來加速,其中很關鍵的一個點就是 GPU 和 CPU 之間的存儲帶寬的瓶頸,Grace+Hopper 超級芯片就是解決此類問題。
在 Grace Hopper 超級芯片架構下,GPU 可以通過高速的 NVLink 直接訪問到 CPU 顯存。對于大模型計算,更多應用遷移到GPU上加速都有極大的幫助。
Grace+Grace ,是在一個模組上可以提供高達 144 CPU 核,1 TB/s LPDDR5X 的高速存儲,給集群節點提供了強勁的單節點的 CPU 計算性能,從而提升整個集群效率。
之前我們所熟知的 NVLink,都是應用在節點內 GPU 和 GPU 之間的互聯。在 Grace Hopper 集群下,NVLink 可以做到節點之間互聯,這樣節點之間 GPU-GPU,或 GPU-CPU,或 CPU-CPU 之間,都可以通過高速的 NVLink 進行互聯,可以更高效地完成大模型的分布式計算。
在未來也許我們可以看到更多業務應用遷移到 Grace+Hopper 架構下,節點之間的 NVLlink 高速互聯也許會成為一個趨勢,更好地支持 GPU 分布式計算。
智能網卡在集群中的應用,首先智能網卡技術并不是一個新的技術,各家也有各家的方案,傳統上我們可以利用智能網卡把云業務場景下的 Hypervisor 管理、網絡功能、存儲功能等卸載到智能網卡上進行處理,這樣可以給云客戶提供一個云生的計算資源環境。NVIDIA 智能網卡跟百度也有很深的合作,包括 GPU 集群裸金屬方案也都配置了 NVIDIA 智能網卡進行管理。
在非 GPU 的業務場景下,我們看到智能網卡對 HPC 應用業務的加速,主要是在分子動力學,氣象和信號處理應用上,通過對集群中聚合通信的卸載,我們可以看到應用可以獲得 20% 以上的收益。智能網卡技術也在不斷更新、升級,業務場景也在不斷探索。相信在未來的 GPU 集群上會有更多的業務或優化加速可以使用到智能網卡技術。
三,軟件。數據中心基礎設施是基礎底座,如何能夠更高效、快速、方便地應用到基礎架構變革所帶來的優勢,軟件生態的不斷完善和優化是關鍵。
針對不同的業務場景,NVIDIA 提供了 SuperPOD、OVX 等數據中心基礎設施的參考架構,可以幫助用戶構建最優的數據中心基礎設施架構。
上層提供了各種軟件加速庫,如 cuQuantum 可以幫助客戶直接在 GPU 集群上模擬量子算法計算,Magnum IO 用來加速數據中心 GPU 集群和存儲系統的訪存 IO 效率,提升整個集群計算效率。
在未來會有更多的軟件工具、行業 SDK,來支撐數據中心架構的使用,讓各領域的研發人員不需要了解底層細節,更加方便、快速地使用到數據中心 GPU 集群的的最優性能。
原文標題:百度智算峰會精彩回顧:應用驅動的數據中心計算架構演進
文章出處:【微信公眾號:NVIDIA英偉達】歡迎添加關注!文章轉載請注明出處。
-
英偉達
+關注
關注
22文章
3749瀏覽量
90856
原文標題:百度智算峰會精彩回顧:應用驅動的數據中心計算架構演進
文章出處:【微信號:NVIDIA_China,微信公眾號:NVIDIA英偉達】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論