滴滴云A100 40G 性能測試 V100陪練!

眼看游戲卡RTX3080 發(fā)售在即,我終于等到了滴滴云(感謝)A100的測試機會。因為新卡比較緊張,一直在排隊中,直到昨天才拿了半張A100...今天終于上手了單張40G的A100,小激動,小激動,小激動?。?!基于安培架構的最新一代卡皇(NVIDIA GPU A100 Ampere)可以搞起來了。

Part 1:系統環(huán)境

A100正處于內存階段,官網上還看不到。內測通過ssh連接,ssh連上去之后大概看了下系統環(huán)境。

操作系統,CPU,RAM數據如上。重點關注GPU:A100-SXM4-40GB (上次摸DGX A100的時候,沒有把測試跑起來,好悔)

CUDA11,CudNN,TensorFlow1.5.2 等配套環(huán)境滴滴云都已經部署好了,可以省去好多時間!

?

這里需要注意,新版顯卡必須要用CUDA11,而且得用NV自己編譯的TensorFlow1.5.2。

然后,網上撈一段Python代碼:

from tensorflow.python.client?

import device_lib print(device_lib.list_local_devices())

輸出:

Created TensorFlow device (/device:GPU:0 with 36672 MB memory) -> physical GPU (device: 0, name: A100-SXM4-40GB, pci bus id: 0000:cb:00.0, compute capability: 8.0)

[name: "/device:CPU:0"

device_type: "CPU"

memory_limit: 268435456

locality {

}

incarnation: 3653225364972814250

, name: "/device:XLA_CPU:0"

device_type: "XLA_CPU"

memory_limit: 17179869184

locality {

}

incarnation: 7582640257522961335

physical_device_desc: "device: XLA_CPU device"

, name: "/device:XLA_GPU:0"

device_type: "XLA_GPU"

memory_limit: 17179869184

locality {

}

incarnation: 5159602092499780099

physical_device_desc: "device: XLA_GPU device"

, name: "/device:GPU:0"

device_type: "GPU"

memory_limit: 38453856175

locality {

? bus_id: 6

? numa_node: 5

? links {

? }

}

incarnation: 3682405687960901280

physical_device_desc: "device: 0, name: A100-SXM4-40GB, pci bus id: 0000:cb:00.0, compute capability: 8.0"

]

可以看到有XLA_GPU和GPU,物理設備型號為A100-SXM4-40GB,算力8.0,調用應該沒問題!

Part 2:掂量掂量

卡到手了,肯定是要測一測!

既然是測試,肯定需要有陪跑選手滴。這里用到的設備為谷歌Colab的V100 16G,矩池云的2080TI 11G(為啥要拉上我這個性價比之王 ╰(艸皿艸 ) ,曾經的我隨風飛揚,現在的我感覺天臺的風好涼)。

設備有了,怎么測試才科學呢?用娛樂大師么? 不行滴,不行滴,不行滴!

首先,操作系統都是 Ubuntu18.04,跑不了Window上的軟件。

其次,這里主要是比較深度學習能力,不比吃雞能力。

深度學習卡能干什么?煉丹咯!

剛好看到(蓄謀已久)TensorFlow官方有提供Benchmarks,可以測試一些常見模型,那我就現學現賣用這個來做個“業(yè)余”測試吧,本文提供數據僅供參考,如有謬誤,不要找我!

項目地址:

https://github.com/tensorflow/benchmarks? ? ? ? ? ? ?

運行前需要先安裝好CUDA,Cudnn,和TensorFlow,基本沒什么多余的依賴。

三行命令就可以跑起來了

git clone https://github.com/tensorflow/benchmarks.git

cd benchmarks/scripts/tf_cnn_benchmarks

python tf_cnn_benchmarks.py --num_gpus=1 --batch_size=32 --model=resnet50? ? ? ? ? ? ?

如果要測試特定的版本:

git checkout cnn_tf_v1.15_compatible? ? ? ? ? ? ?

這里注意區(qū)分1.15和1.5版本,別搞錯哦!

Part 3:測試結果

懷著無比激動的心情,重復著無比枯燥的復制黏貼,終于把表格做出了。每次跑會有一些微小的差別,但是整體偏差不會太高。

A100 VS? V100? VS 2080ti

這張表格使用Benchmarks的默認參數對比了A100,V100, 2080ti的性能。橫向為GPU,列為模型名稱,中間的為吞吐量images/sec,數字越大就證明越強。從結果來看,A100 Vs V100,基本保持在1.5倍上,比較好的能達到1.7倍左右。

上面為默認參數,下面使用--use_fp16比較一下A100和V100的差距。

A100 Vs V100 FP16?

因為之前跑了20G的A100,所以也來比較一下通過MIG分割后的卡和單卡之間的差別。

MIG是multi-instance-gpu的縮寫,多實例 GPU (MIG) 可提升每個 NVIDIA A100 Tensor 核心 GPU 的性能和價值。MIG 可將 A100 GPU 劃分為多達七個實例,每個實例均與各自的高帶寬顯存、緩存和計算核心完全隔離。

A100 40G? VS? MIG 20G

從結果來看,40G和20Gx2有輸有贏。也就是說MIG切完后性能并沒有掉很多。

因為我手上顯卡資源匱乏,沒有其他設備,所以網上找了一張表格,可以通過V100作為參考系,對比一下其他設備和A100的差距。

再貼兩張官方的性能對比圖

從官方的圖來看,8張A100最好的情況下能達到8張V100的6倍多。其中跑ResNet-50 V1.5的時候大概能達到兩倍,剛好TensorFlow Benchmarks提供了這個模型。那我就順手測一測,如果有不一致,肯定是我的打開方式不對,老黃請不要拿RTX3090顯卡砸我,我會空手接…!

拿出計算器滴滴滴:

606.23 / 349.78 = 1.7331751386585853965349648350392

1341.26 / 859.04 = 1.5744890652329580804582858886919? ? ? ? ? ? ?

老黃誠不我欺,四舍五入一下真的是兩倍哎!

當然,嚴格來說,我們的測試環(huán)境還是存在不小的差異。NV官方是8卡對決(家里沒礦,但是卡多啊),能保證測試過程中其他變量保持一致。我這是隨手取了兩個平臺的單卡。

Part 4:簡單總結

《性能提升20倍:英偉達GPU旗艦A100登場》這樣的媒體報道,就只能當故事匯了。正常的大廠都不可能這么升級,老黃的刀法也不允許這種事情發(fā)生,一年一刀,一刀一倍不香么。從實際情況來看,A100單手懟2080ti(2倍+), 雙腳踩V100是沒有問題滴(1.5倍+)。

滴滴云(大師碼:8888)對于A100的跟緊速度相當之快,很早就開始籌備,現在處于內測階段,如果有需要的可以去申請測試!

========

博客地址:https://www.tonyisstark.com/383.html

?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容