您的位置:首頁>科技>正文

DGX

3月23日起, 智東西聯合NVIDIA推出「實戰營」第一季, 共計四期。 第三期於4月13日晚8點在智東西「智慧安防」系列社群開講, 由西安交通大學人工智慧與機器人研究所博士陶小語、NVIDIA高級系統架構師易成二位元講師先後主講,

主題分別為《智慧監控場景下的大規模並行化視頻分析方法》和《NVIDIA DGX-2 驅動智慧監控革命》。

NVIDIA在GTC 2018大會上發佈了新一代超級電腦DGX-2, 在兩塊獨立的GPU板卡上配備了16塊Tesla V100 GPU, 每塊V100擁有32GB HBM2顯存(共512GB), 並且採用12個NVSwitch將16塊GPU採用全線速互聯的方式連接, 使得任意兩塊GPU之間P2P總頻寬都是300GB, 處理器採用了兩顆英特爾至強Platinum CPU, 而存儲方面則配置了1.5TB的標準記憶體, 採用30TB的NVMe SSD, 提供了更大的緩存空間, 能夠實現每秒2千萬億次浮點運算(2 PFLOPS), 性能比去年9月推出的DGX-1性能提高了10倍。

本文為NVIDIA高級系統架構師易成的主講實錄, 共計4381字, 預計7分鐘讀完。 在流覽主講正文之前, 先瞭解下本次講解的提綱:

-NVIDIA DGX伺服器的特點和在深度學習方面的優勢

-NVIDIA P100和V100的深度學習計算性能對比分析

-V100 GPU的新特性及加速庫的應用

智東西「實戰營」第一季第一期由圖瑪深維首席科學家陳韻強和NVIDIA高級系統架構師付慶平, 分別就《深度學習如何改變醫療影像分析》、《DGX超算平臺-驅動人工智慧革命》兩個主題在智東西旗下「智慧醫療」社群進行了系統講解。 第二期由NVIDIA深度學習學院認證講師侯宇濤主講, 主題為《手把手教你使用開源軟體DIGITS實現目標檢測》。 第四期是在智東西旗下「高性能計算」社群開講, 主題為《GPU加速的即時空間天氣預報》, 主講老師為清華大學電腦系副教授都志輝、NVIDIA高級系統架構師易成。

主講環節

易成:大家晚上好, 我是NVIDIA的系統架構師易成, 今天講解的主題是《NVIDIA DGX-2 驅動智慧監控革命》,

前面陶老師的介紹非常精彩, 我給大家講解下GPU和DGX相關的技術, 做深度學習和智慧安防相關的同僚, 可以多留意一下。

首先NVIDIA的產品主要運用在這三個領域:

1、GPU計算卡, 主要做深度學習和高性能計算等, 屬於Tesla系列, 是專業級的產品;

2、圖形顯卡, 用於做電腦的圖形顯示、圖形渲染等, 屬於GeForce、Titan系列, 是消費級的產品;

3、Tegra系列, 用於智慧終端機機器人, 自動駕駛領域, 是嵌入式的產品。

自從NVIDIA 2006年發佈CUDA以來, GPU計算已經走過了十年的歷程, 從早期的HPC計算到現在廣泛應用的人工智慧深度學習領域, GPU的性能越來越高, 功能也越來越豐富, 使用的領域也越來越廣。

GPU計算在視頻編解碼、圖像識別、智慧視頻監控、語音辨識、自然語言處理等領域都有廣泛的應用, 陶老師前面已經做了非常詳細的介紹, 這方面我就不多說了。

GPU的計算能力已經很強了, 但是要解決現實中的問題,一塊GPU或者一台八卡的GPU伺服器是遠遠不夠的,很多人工智慧的應用都需要大規模的GPU集群進行計算,比如百度的語音辨識系統,其網路模型的參數達到3億個,需要20億億次計算量,谷歌的自然語言翻譯系統有87億個參數,大約需要100億億次的計算量,這些都需要大規模的GPU集群。

剛才陶老師介紹了P100做視頻監控的應用,現在我們看一下P100和V100的性能比較。從理論峰值來看,V100的混合精度性能可以達到125TFLOPS,比P100提升了十倍多,這是因為V100裡面增加了新的計算核心Tensor code,而P100是沒有的。Tensor code可以支援FP16和FP32的混合乘加計算,適合做深度學習的Training(訓練)和Inference(推理)。

這張圖展示了V100和P100做深度學習Training和Inference的性能對比,加速效果還是非常明顯的,V100相對P100 Training速度提升了2.4倍,Inference速度提升了3.7倍。

這張圖展示的是在DGX-1平臺上V100和P100在不同的深度學習框架上做Training(訓練)的性能對比,最少的是PyTorch,提升了2.4倍,最多的是MXNet,提升了3.1倍。

V100是去年發佈的,只有16GB的顯存。今年3月份NVIDIA發佈了新的V100,顯存提升了一倍,增加到了32GB。雖然其他性能參數沒有變化,但是顯存增加一倍,也能給深度學習計算帶來顯著的性能提升。資料從主機記憶體載入到GPU顯存一直是GPU計算性能提升的一個瓶頸,現在32GB的顯存可以載入更多資料,降低了資料I/O(輸入輸出)的開銷。

這張圖上就是最新的V100 GPU,顯存是32GB,其他參數現在沒有什麼變化。

32GB的V100也有NVLink和PCIE兩種版本,除了顯存提升到32GB之外,其他參數和原來的V100相比也沒有什麼變化。

前面我們介紹了GPU和32GB的V100 GPU。下面我們來看一下DGX伺服器,首先我們看一下DGX-1,一台DGX-1包含8塊NVLink V100 GPU,兩顆Xeon處理器,512GB記憶體,4個100GB InfiniBand EDR網口,8TB SSD本機存放區空間,一共有4個1600W電源,系統功耗是3200W,8個NVLink GPU採用立方體結構的互聯方式,這種方式並不能保證任意兩塊GPU之間的速率都是相同的,且任意兩塊GPU之間P2P頻寬小於300GB/s。

由於DGX-1 GPU互聯採用立方體的架構,GPU之間的P2P頻寬並不能達到300GB的理想速度,因此今年NVIDIA發佈了新產品DGX-2,它的超強性能將不負眾望。這款產品今年第三季度可以供貨,DGX-2是一款標準機架式伺服器,功耗10千瓦,因此對機櫃的供電和散熱會有一定的要求。

這是DGX-2的內部架構,和DGX-1相比,配置大幅度提升,首先是16塊32GB的V100 GPU,12個NVSwitch,16塊GPU採用全線速互聯的方式,任意兩塊GPU之間P2P總頻寬都是300GB。CPU採用Intel最新的鉑金版CPU,配置1.5TB主機記憶體,比DGX-1提升3倍,8個100GB IB網卡,30TB NVME SSD提供了更大的緩存空間。

上圖展示的是18埠的NVSWITCH交換機,每個埠是50GB的雙向總頻寬,NVSWITCH包含20億個電晶體,是目前速度最快的交換機。

這是DGX-2內部GPU互聯的架構圖,DGX-2有12個NVSWITCH,每個GPU主機板上有6個NVSWITCH,將16個GPU全部互聯起來,我們知道每個GPU上有6個NVLink通道,每個通道連接一個NVSWITCH,所以每個GPU會和主機板上的6個NVSWITCH互聯,每個GPU主機板上有8個GPU,所以每個NVSWITCH會有8個NVLink通道進來,也有8個NVLink通道出去,連接到NVBridge的背板上,也就是圖中的中間橋樑部分,每個GPU主機板的NVSWITCH共有48個NVLink接到背板上,因此背板的總頻寬是2.4T每秒。

這裡我們要瞭解兩個概念,一個是NVSWITCH,一個是NVBridge,GPU和NVSWITCH相連,NVSWITCH和NVBridge相連。

這是一台DGX-2和兩台DGX-1的性能比較。一台DGX-2和兩台DGX-1的GPU數量是相等的,但是兩台DGX-1的CPU資源比一台DGX-2的資源多一倍,我們發現運行物理學、氣象、深度學習的應用時,DGX-2最少可以實現兩倍的加速。

現在我們小結一下NVIDIA的產品線,現在NVIDIA有DGX的伺服器,DGX 工作站DGX Station,DGX Station是水冷散熱,靜音效果非常好。伺服器和工作站都可以支援32GB V100,還有用於做Inference的 P4 GPU,P4可以支援Int8資料類型。除此之外,我們還有用於自動駕駛的Drive PX2和嵌入式產品Jetson TX1。

如果是做GPU計算的朋友,可能對這個GPU計算平臺的架構比較熟悉了,我們現在已經建立起了比較完善的GPU計算生態系統,可以用的工具非常多,有大量的GPU計算APP,如果我們要做開發的話,可以得到非常多的GPU加速計算工具和相關的資料,程式移植也比較方便,也有很多封裝好的支援GPU的框架平臺可以使用。

這裡我想給大家介紹的是容器工具,DGX伺服器中已經集成了容器平臺NVIDIA-Docker和主流的深度學習框架。NVIDIA-Docker容器引擎是開源的軟體,大家都可以下載使用。NVIDIA-Docker原生的Docker相比可以更好地調用GPU,也更穩定。和直接在物理機上運行軟體相比,使用容器省去了軟體安裝、編譯和部署的過程,避免軟體依賴和相容性的問題,節省了大量的時間,性能損失也非常小,一般容器的運行只有3%左右的損失。

下面給大家介紹一下NVIDIA的NGC平臺,這是一個可以免費註冊的平臺,在NGC平臺,大家可以下載各個版本的DeepLearning深度學習框架的容器鏡像、開源的HPC應用軟體容器鏡像以及視覺化軟體的容器鏡像,即使你不想使用容器,這個平臺也是非常有用的,你可以將容器中編譯安裝好的軟體拷貝到物理機上運行,可以省去你軟體安裝、編譯和部署的時間。

最後介紹一下Inference(推理)軟體TensorRT 4.0,這是今年新發佈的一個版本,和3.0版本相比,增加了RNN、MLP 層的支援,也可以支援ONNX格式檔等功能。現在已經可以點擊圖上連結下載,歡迎大家使用。

我的演講到這裡就結束了,謝謝大家。

Q&A環節

問題一

雷晨雨-平安科技-深度學習演算法工程師

有沒有在imagenet資料集上做過完整的訓練性能比對,比8卡titanXP快多少,或者其他的性能比較?

易成:很多用戶都關心這個問題,經常會問我們P100、V100和Titan的性能比較怎麼樣,由於P100和V100是我們Tesla系列的產品,屬於專業級別的GPU卡,TITAN和GeForce都屬於消費級的產品,有些消費級的GPU,還有非公版的產品,有些GPU甚至會犧牲壽命來將主頻調高,所以我們不會和這兩類產品做對比,但是二者的功能和性能區別還是挺多的,大家可以對比一下,我這裡找到了一個網上的文章,可以分享給大家看看NVIDIA GPU—Tesla和GeForce的比較:http://blog.51cto.com/andyliu/1942473?from=timeline。

問題二

曹偉-安維爾資訊技術-工程師

1,嵌入式tegra,消費顯卡計算以及專業卡在視頻安防處理的優缺點。

2,現在顯卡計算方案和fpga以及現在tpu和一些ai晶片的優缺點。

3,GPU硬體解碼對編碼格式的支援情況。

4,目前GPU如何解決大規模資料運算時,保證GPU的有效利用率?

易成:1,這幾種設備使用場景不同。嵌入式Tegra,主要用在智慧終端機,移動端,智慧汽車,攝像頭等場景,這種晶片體積小,功耗低,但計算能力相對較弱,主要做inference。消費級GPU可以一般是個人開發者用來做training應用,功能和性能不如Tesla專業GPU。Tesla GPU則是大規模部署在資料中心做training業務,也提供雲端的inference業務,這類GPU計算能力強,功能較多,但功耗較高,對散熱要求較高。

3,不同的GPU對支援的格式不同,V100可以支援所有的格式,P100不支援H.265 (HEVC) 8k,支援的格式可以看NVIDIA官網介紹可以看看這個連結介紹https://developer.nvidia.com/video-encode-decode-GPU-support-matrix

4,GPU的利用率和負載情況相關,儘量保證GPU數量和計算量相匹配。另外,V100 GPU支援MPS多進程服務功能,開啟MPS也可以一定程度提高利用率。

問題三

鄭少飛-安徽大學-電腦視覺方向

1,在各個深度學習框架以及各種API逐漸完善的今天,我們更多時候都是在用現成的介面和框架實現我們的所需,低層的封裝等都有專門的團隊在做。我想問一下,在這種情況下做研究,我們有必要去傾注一些精力去熟悉一些硬體架構以及低層的一些封裝演算法嗎?

2,目前GPU架構的缺點,將來會怎麼改進?

易成:1,開發深度學習框架的目的就是為了節省大家程式開發的時間,避免大家去做硬體架構和底層相關的開發,比如我們不必寫CUDA代碼去調用GPU了。因此我們在做一些工程項目的時候,就不用太關注這些底層的東西。如果我們是做科研,或者覺得現有的框架性能不夠好,要開發自己的框架,這些還是需要瞭解的。

2,目前GPU的性能雖然已經很高了,但還是不夠,現在對計算能力的要求增長的更快,所以今後GPU的性能還會有進一步的提升;還有比如功耗,現在一塊GPU功耗300W,DGX-2的功耗達到10kW,散熱的問題很嚴重,能不能把這個功耗降下去,所以,需要改進的地方還很多。

但是要解決現實中的問題,一塊GPU或者一台八卡的GPU伺服器是遠遠不夠的,很多人工智慧的應用都需要大規模的GPU集群進行計算,比如百度的語音辨識系統,其網路模型的參數達到3億個,需要20億億次計算量,谷歌的自然語言翻譯系統有87億個參數,大約需要100億億次的計算量,這些都需要大規模的GPU集群。

剛才陶老師介紹了P100做視頻監控的應用,現在我們看一下P100和V100的性能比較。從理論峰值來看,V100的混合精度性能可以達到125TFLOPS,比P100提升了十倍多,這是因為V100裡面增加了新的計算核心Tensor code,而P100是沒有的。Tensor code可以支援FP16和FP32的混合乘加計算,適合做深度學習的Training(訓練)和Inference(推理)。

這張圖展示了V100和P100做深度學習Training和Inference的性能對比,加速效果還是非常明顯的,V100相對P100 Training速度提升了2.4倍,Inference速度提升了3.7倍。

這張圖展示的是在DGX-1平臺上V100和P100在不同的深度學習框架上做Training(訓練)的性能對比,最少的是PyTorch,提升了2.4倍,最多的是MXNet,提升了3.1倍。

V100是去年發佈的,只有16GB的顯存。今年3月份NVIDIA發佈了新的V100,顯存提升了一倍,增加到了32GB。雖然其他性能參數沒有變化,但是顯存增加一倍,也能給深度學習計算帶來顯著的性能提升。資料從主機記憶體載入到GPU顯存一直是GPU計算性能提升的一個瓶頸,現在32GB的顯存可以載入更多資料,降低了資料I/O(輸入輸出)的開銷。

這張圖上就是最新的V100 GPU,顯存是32GB,其他參數現在沒有什麼變化。

32GB的V100也有NVLink和PCIE兩種版本,除了顯存提升到32GB之外,其他參數和原來的V100相比也沒有什麼變化。

前面我們介紹了GPU和32GB的V100 GPU。下面我們來看一下DGX伺服器,首先我們看一下DGX-1,一台DGX-1包含8塊NVLink V100 GPU,兩顆Xeon處理器,512GB記憶體,4個100GB InfiniBand EDR網口,8TB SSD本機存放區空間,一共有4個1600W電源,系統功耗是3200W,8個NVLink GPU採用立方體結構的互聯方式,這種方式並不能保證任意兩塊GPU之間的速率都是相同的,且任意兩塊GPU之間P2P頻寬小於300GB/s。

由於DGX-1 GPU互聯採用立方體的架構,GPU之間的P2P頻寬並不能達到300GB的理想速度,因此今年NVIDIA發佈了新產品DGX-2,它的超強性能將不負眾望。這款產品今年第三季度可以供貨,DGX-2是一款標準機架式伺服器,功耗10千瓦,因此對機櫃的供電和散熱會有一定的要求。

這是DGX-2的內部架構,和DGX-1相比,配置大幅度提升,首先是16塊32GB的V100 GPU,12個NVSwitch,16塊GPU採用全線速互聯的方式,任意兩塊GPU之間P2P總頻寬都是300GB。CPU採用Intel最新的鉑金版CPU,配置1.5TB主機記憶體,比DGX-1提升3倍,8個100GB IB網卡,30TB NVME SSD提供了更大的緩存空間。

上圖展示的是18埠的NVSWITCH交換機,每個埠是50GB的雙向總頻寬,NVSWITCH包含20億個電晶體,是目前速度最快的交換機。

這是DGX-2內部GPU互聯的架構圖,DGX-2有12個NVSWITCH,每個GPU主機板上有6個NVSWITCH,將16個GPU全部互聯起來,我們知道每個GPU上有6個NVLink通道,每個通道連接一個NVSWITCH,所以每個GPU會和主機板上的6個NVSWITCH互聯,每個GPU主機板上有8個GPU,所以每個NVSWITCH會有8個NVLink通道進來,也有8個NVLink通道出去,連接到NVBridge的背板上,也就是圖中的中間橋樑部分,每個GPU主機板的NVSWITCH共有48個NVLink接到背板上,因此背板的總頻寬是2.4T每秒。

這裡我們要瞭解兩個概念,一個是NVSWITCH,一個是NVBridge,GPU和NVSWITCH相連,NVSWITCH和NVBridge相連。

這是一台DGX-2和兩台DGX-1的性能比較。一台DGX-2和兩台DGX-1的GPU數量是相等的,但是兩台DGX-1的CPU資源比一台DGX-2的資源多一倍,我們發現運行物理學、氣象、深度學習的應用時,DGX-2最少可以實現兩倍的加速。

現在我們小結一下NVIDIA的產品線,現在NVIDIA有DGX的伺服器,DGX 工作站DGX Station,DGX Station是水冷散熱,靜音效果非常好。伺服器和工作站都可以支援32GB V100,還有用於做Inference的 P4 GPU,P4可以支援Int8資料類型。除此之外,我們還有用於自動駕駛的Drive PX2和嵌入式產品Jetson TX1。

如果是做GPU計算的朋友,可能對這個GPU計算平臺的架構比較熟悉了,我們現在已經建立起了比較完善的GPU計算生態系統,可以用的工具非常多,有大量的GPU計算APP,如果我們要做開發的話,可以得到非常多的GPU加速計算工具和相關的資料,程式移植也比較方便,也有很多封裝好的支援GPU的框架平臺可以使用。

這裡我想給大家介紹的是容器工具,DGX伺服器中已經集成了容器平臺NVIDIA-Docker和主流的深度學習框架。NVIDIA-Docker容器引擎是開源的軟體,大家都可以下載使用。NVIDIA-Docker原生的Docker相比可以更好地調用GPU,也更穩定。和直接在物理機上運行軟體相比,使用容器省去了軟體安裝、編譯和部署的過程,避免軟體依賴和相容性的問題,節省了大量的時間,性能損失也非常小,一般容器的運行只有3%左右的損失。

下面給大家介紹一下NVIDIA的NGC平臺,這是一個可以免費註冊的平臺,在NGC平臺,大家可以下載各個版本的DeepLearning深度學習框架的容器鏡像、開源的HPC應用軟體容器鏡像以及視覺化軟體的容器鏡像,即使你不想使用容器,這個平臺也是非常有用的,你可以將容器中編譯安裝好的軟體拷貝到物理機上運行,可以省去你軟體安裝、編譯和部署的時間。

最後介紹一下Inference(推理)軟體TensorRT 4.0,這是今年新發佈的一個版本,和3.0版本相比,增加了RNN、MLP 層的支援,也可以支援ONNX格式檔等功能。現在已經可以點擊圖上連結下載,歡迎大家使用。

我的演講到這裡就結束了,謝謝大家。

Q&A環節

問題一

雷晨雨-平安科技-深度學習演算法工程師

有沒有在imagenet資料集上做過完整的訓練性能比對,比8卡titanXP快多少,或者其他的性能比較?

易成:很多用戶都關心這個問題,經常會問我們P100、V100和Titan的性能比較怎麼樣,由於P100和V100是我們Tesla系列的產品,屬於專業級別的GPU卡,TITAN和GeForce都屬於消費級的產品,有些消費級的GPU,還有非公版的產品,有些GPU甚至會犧牲壽命來將主頻調高,所以我們不會和這兩類產品做對比,但是二者的功能和性能區別還是挺多的,大家可以對比一下,我這裡找到了一個網上的文章,可以分享給大家看看NVIDIA GPU—Tesla和GeForce的比較:http://blog.51cto.com/andyliu/1942473?from=timeline。

問題二

曹偉-安維爾資訊技術-工程師

1,嵌入式tegra,消費顯卡計算以及專業卡在視頻安防處理的優缺點。

2,現在顯卡計算方案和fpga以及現在tpu和一些ai晶片的優缺點。

3,GPU硬體解碼對編碼格式的支援情況。

4,目前GPU如何解決大規模資料運算時,保證GPU的有效利用率?

易成:1,這幾種設備使用場景不同。嵌入式Tegra,主要用在智慧終端機,移動端,智慧汽車,攝像頭等場景,這種晶片體積小,功耗低,但計算能力相對較弱,主要做inference。消費級GPU可以一般是個人開發者用來做training應用,功能和性能不如Tesla專業GPU。Tesla GPU則是大規模部署在資料中心做training業務,也提供雲端的inference業務,這類GPU計算能力強,功能較多,但功耗較高,對散熱要求較高。

3,不同的GPU對支援的格式不同,V100可以支援所有的格式,P100不支援H.265 (HEVC) 8k,支援的格式可以看NVIDIA官網介紹可以看看這個連結介紹https://developer.nvidia.com/video-encode-decode-GPU-support-matrix

4,GPU的利用率和負載情況相關,儘量保證GPU數量和計算量相匹配。另外,V100 GPU支援MPS多進程服務功能,開啟MPS也可以一定程度提高利用率。

問題三

鄭少飛-安徽大學-電腦視覺方向

1,在各個深度學習框架以及各種API逐漸完善的今天,我們更多時候都是在用現成的介面和框架實現我們的所需,低層的封裝等都有專門的團隊在做。我想問一下,在這種情況下做研究,我們有必要去傾注一些精力去熟悉一些硬體架構以及低層的一些封裝演算法嗎?

2,目前GPU架構的缺點,將來會怎麼改進?

易成:1,開發深度學習框架的目的就是為了節省大家程式開發的時間,避免大家去做硬體架構和底層相關的開發,比如我們不必寫CUDA代碼去調用GPU了。因此我們在做一些工程項目的時候,就不用太關注這些底層的東西。如果我們是做科研,或者覺得現有的框架性能不夠好,要開發自己的框架,這些還是需要瞭解的。

2,目前GPU的性能雖然已經很高了,但還是不夠,現在對計算能力的要求增長的更快,所以今後GPU的性能還會有進一步的提升;還有比如功耗,現在一塊GPU功耗300W,DGX-2的功耗達到10kW,散熱的問題很嚴重,能不能把這個功耗降下去,所以,需要改進的地方還很多。

Next Article
喜欢就按个赞吧!!!
点击关闭提示