今年早些時候,NVIDIA首席執行官黃仁勛發布了NVIDIA? DGX-2?服務器,并稱其為“全球最大GPU”。DGX-2在單一系統中包含了16個NVIDIA Tesla? V100 32 GB GPU和其他頂級組件(兩個24核Xeon CPU、1.5 TB DDR4 DRAM內存和30 TB NVMe存儲),通過基于NVSwitch的NVLink結構連接,可提供2 petaFLOPS的性能,堪稱最強大的超級計算機之一。
NVSwitch使DGX-2成為了最大的GPU,這意味著其總體并非各部分的簡單加成。事實證明,讓DGX-2服務器能夠稱得上“全球最大GPU”的,正是其中看似最不起眼的部分。讓我們來看看創新NVIDIA NVSwitch?芯片及其他工程特性如何使DGX-2成為了全球最大的GPU。
注:本文中的信息來自于Alex Ishii 和 Denis Foley 在Hot Chip 2018大會上的專題演示“NVSwitch and DGX?2 – NVIDIA NVLink-Switching Chip and Scale-Up GPU-Compute Server”。
單一GPU
讓我們先看看單一多核GPU如何與CPU交互,如圖1所示。程序員通過NVIDIA CUDA?技術明確地展現了并行工作。工作流經PCIe I / O端口進入GPU,其中數據由GPU驅動程序分發到可用的圖形處理群集(GPC)和流式多處理器(SM)內核。XBAR的采用讓GPU / SM內核能夠在L2高速緩存和高帶寬GPU內存(HBM2)上交換數據。
GPC和GPU內存之間的高帶寬可實現大規模計算能力和快速同步,但規模受限,因其要求數據必須適合本地GPU內存,才能有效使用XBAR提供的高帶寬。
圖1. 連接到CPU的單一GPU
雙GPU(PCIe和NVLink)
圖2顯示了添加另一個GPU是如何增加可用GPU內存量的。在所示配置中,GPU只能以PCIe提供的32 GBps的最大雙向帶寬,訪問其他GPU上的內存。此外,這些交互會與總線上的CPU操作競爭,甚至進一步占用可用帶寬。
圖2. 通過PCIe總線連接的雙GPU
NVIDIA NVLink?技術使GPC無需通過PCIe總線即可訪問遠程GPU內存,如圖3所示。NVLinks實現了XBAR之間的有效橋接。V100 GPU上最多可采用六個NVLink,GPU之間的雙向帶寬可達300 GBps。但是,在具有兩個以上GPU的系統中,六個可用的NVLink必須先分成較小的鏈接組,每個組專用于訪問不同的特定單一GPU。這就限制了可使用直接連接來構建的機器規模,并降低了每對GPU之間的帶寬。
圖3. 通過NVLink技術連接的雙GPU
Super Crossbar將GPU連接在一起
理想的情況是提供某種交叉,讓更多GPU能夠訪問所有GPU內存,所有GPU都可能在單一GPU驅動程序實例的控制下,如圖4所示。有了這樣的交叉,可在沒有其他進程干預的情況對GPU內存進行訪問,且可用帶寬將足夠高,可提供類似于上文所述的雙GPU情況下的性能擴展。
圖4. 尋找交叉開關設備
最終目標是提供以下所有內容:
更大的問題規模容量。大小受整個GPU集合的GPU內存容量限制,而非單一GPU容量。
強大的可擴展性。與現有解決方案相比,NUMA效應將大大降低。總內存帶寬實際上會隨GPU數量而增長。
使用便利。針對較少數量的GPU編寫的應用程序將更易于移植。此外,豐富的資源可助力快速開展實驗。
以上16-GPU配置(假設有32GB V100 GPU)產生的總容量使其能夠前所未有地運行“一個超強GPU”的計算。
NVIDIA NVSwitch介紹
NVSwitch(圖5)是一款GPU橋接設備,可提供所需的NVLink交叉網絡。端口邏輯模塊中的數據包轉換使得進出多GPU的流量看似是通過單一GPU的。
圖5. 帶有標注的NVSwitch芯片裸片
NVSwitch芯片并行運行,以支持數量日益增加的GPU之間的互連??墒褂萌齻€NVSwitch芯片構建一個8 GPU封閉系統。兩條NVLink路徑將每個GPU連接至每臺交換機,流量在所有NVLink和NVSwitch之間交叉。 GPU使用任意對之間的300 GBps雙向帶寬成對通信,因為NVSwitch芯片提供了從任何源到任何目的地的唯一路徑。
圖6. NVSwitch框圖
實現了對分帶寬
讓每個GPU從另一個GPU讀取數據,而不會有兩個GPU從同一遠程GPU讀取數據,就實現了無干擾的成對通信能力。使用16個GPU實現的1.98 TBps讀取帶寬與128B傳輸在理論上80%的雙向NVLink效率相匹配。
圖7. 實現的對分帶寬結果
使用cuFFT(16K X 16K)
實現更強大的可擴展性
通過在越來越多的GPU上(更高的GFLOPS,相應的總運行時間卻更短)、以及搭載V100 GPU的NVIDIA DGX-1服務器上運行“iso-problem instance”計算進行對比,即能證明其強大的可擴展性能,如圖8所示。如果沒有NVSwitch網絡提供的NVLink交叉,由于問題分散在更多GPU上,傳輸數據所需的時間要長于在本地對相同數據進行簡單計算所需的時間。
圖8. 使用NVLink與Hybrid Cube Mesh的cuFFT結果
全歸約基準測試
圖9也體現了NVLink交叉的優勢。全歸約基準測試是對機器學習應用程序中采用的重要通信原語進行的測量。與兩臺配備八個GPU的服務器(通過InfiniBand連接)相比,NVLink交叉讓16 GPU DGX-2服務器能夠提供更高帶寬和更低延遲。 針對較小的信息,NVLink網絡的效率明顯優于InfiniBand。
圖9. 全歸約基準測試結果顯示NVLink與InfiniBand帶寬效率的顯著差異
HPC和AI訓練基準測試的加速
圖10所示,與總GPU數相同的兩臺DGX-1(采用V100)服務器相比,HPC和AI訓練基準測試性能得以提升,速度達到了其2到2.7倍。對比所用的DGX-1服務器各采用了8個Tesla V100 32 GB GPU和雙槽Xeon E5 2698v4處理器。服務器通過四個EDR IB / GbE端口連接。
圖10. HPC和AI訓練基準測試的加速
總結
正因有了NVSwitch芯片,DGX-2才可謂全球最大GPU。NVSwitch是一種暢通無阻的設備,具有18個NVLink端口,每端口51.5 GBps,聚合雙向帶寬達928 GBps。采用了NVSwitch芯片的DGX-2可提供512 GB的總容量,針對特定應用的性能表現超過InfiniBand連接的一對DGX-1服務器的兩倍。
-
NVIDIA
+關注
關注
14文章
5013瀏覽量
103247 -
gpu
+關注
關注
28文章
4752瀏覽量
129057
原文標題:全球最大GPU 背后的秘密:NVSwitch如何實現NVIDIA DGX-2的超強功力?
文章出處:【微信號:NVIDIA-Enterprise,微信公眾號:NVIDIA英偉達企業解決方案】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論