一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

通過全堆棧優(yōu)化提升MLPerf v1.1的性能

星星科技指導員 ? 來源:NVIDIA ? 作者:NVIDIA ? 2022-04-02 11:23 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

自 v1.0 以來已經(jīng)過去了五個月,所以是時候進行新一輪 MLPerf 培訓基準了。在這個 v1.1 版本中,整個硬件和軟件堆棧的優(yōu)化看到了基于 NVIDIA 平臺提交的基準測試套件的持續(xù)改進。這種改進在所有不同的尺度上都是一致的,從單個機器到工業(yè)超級計算機,例如由 560 個 NVIDIA DGX A100 系統(tǒng)組成的英偉達 SeleN 和由 768 個節(jié)點 A100 系統(tǒng)組成的微軟 Azure NDM A100 V4 集群。

越來越多的組織使用MLPerf基準來指導其AI基礎設施戰(zhàn)略。MLPerf(VZX19的一部分)是由學術界、研究實驗室和工業(yè)界的人工智能領導者組成的全球聯(lián)盟,其使命是建立公平和有用的基準,為在規(guī)定條件下進行的硬件、軟件和服務的培訓和推理性能提供公正的評估。為了保持行業(yè)趨勢的領先地位,MLPerf不斷發(fā)展,定期舉行新的測試,并添加代表AI最先進水平的新工作負載。

與前幾輪的 MLPerf 基準測試一樣,本文從技術上深入探討了 NVIDIA 行業(yè)領先性能的優(yōu)化工作。

為 MLPerf v0.7 培訓優(yōu)化 NVIDIA AI 性能

MLPerf v1.0 培訓基準:了解創(chuàng)紀錄的 NVIDIA 績效

NVIDIA 繼續(xù)披露并詳細闡述這些技術細節(jié),表明了其對公開和公平的社區(qū)驅(qū)動基準標準和實踐這一重要問題的堅定承諾,以促進人工智能的公益性發(fā)展。

整個堆棧的優(yōu)化

由于構建模塊仍以目前成熟的NVIDIA A100GPU 、英偉達 DGX A100平臺和NVIDIA SuperPod參考體系結(jié)構為中心,整個堆棧的優(yōu)化,特別是在系統(tǒng)軟件、庫和算法方面的優(yōu)化,導致 MLPerf v1.1 中基于 NVIDIA 的平臺的性能不斷提高。

與 1 年前我們自己提交的 MLPerf v0.7 相比,我們觀察到芯片對芯片的改進高達 2.1 倍,最大規(guī)模培訓的改進高達 5.3 倍,如表 1 所示。

poYBAGJHwb6AL1pnAACjfohi-Uw715.png

表 1 。 NVIDIA MLPerf AI 逐年改善

NVIDIA MLPERF v1.0 submission details :
根據(jù)加速器記錄: BERT : 1.0-1033 | DLRM:1.0-1037 | Mask R-CNN:1.0-1057 | Resnet50 v1.5:1.0-1038 | SSD:1.0-1038 | RNN-T:1.0-1060 | 3D Unet:1.0-1053 | MiniGo:1.0-1061
最大刻度記錄: BERT : 1.0-1077 | DLRM:1.0-1067 | Mask R-CNN:1.0-1070 | Resnet50 v1.5:1.0-1076 | SSD:1.0-1072 | RNN-T:1.0-1074 | 3D Unet:1.0-1071 | MiniGo:1.0-1075

NVIDIA MLPERF v1.1 submission details :
根據(jù)加速器記錄: BERT : 1.1-2066 | DLRM:1.1-2064 | Mask R-CNN:1.1-2066 | Resnet50 v1.5:1.1-2065 | SSD:1.1-2065 | RNN-T:1.1-2066 | 3D Unet:1.1-2065 | MiniGo:1.1-2067
最大刻度記錄: BERT : 1.1-2083 | DLRM:1.1-2073 | Mask R-CNN:1.1-2076 | Resnet50 v1.5:1.1-2082 | SSD:1.1-2070 | RNN-T:1.1-2080 | 3D Unet:1.1-2077 | MiniGo:1.1-2081 (*)

使用 NVIDIA 8xA100 服務器訓練時間并乘以 8 (**)計算 A100 的每加速器性能。 U-Net 和 RNN-T 不是 MLPerf v0.7 的一部分。 MLPerf 名稱和徽標是商標。有關更多信息,請訪問 www.mlperf.org 。

下一節(jié)將介紹一些亮點。

CUDA 圖

在 MLPerf v1.0 中,我們對大多數(shù)基準廣泛使用 CUDA 圖。 CUDA 圖將多個內(nèi)核作為單個可執(zhí)行單元啟動,通過最小化與 CPU通信來加快吞吐量。但每個圖的范圍只是一個完整迭代的一部分,該迭代處理單個小批量。因此,每次迭代分解為多個 CUDA 圖時,只捕獲了迭代的一部分。

在 MLPerf v1.1 中,我們使用 CUDA 圖將整個迭代捕獲到多個基準的單個圖中,從而進一步減少培訓期間與 CPU 的通信,并在規(guī)模上提高性能。這在 PyTorch 和 MXNet 基準測試中都得到了實現(xiàn),從而使 ResNet-50 和 BERT 工作負載的性能提高了 6% 。

NCCL

NCCL 是NVIDIA Magnum IO 技術公司的一部分,它是優(yōu)化服務器拓撲結(jié)構的 GPU 間通信的庫。 NCCL 今年早些時候增加的一個關鍵特性是對 CUDA 圖形的支持. 這使我們能夠?qū)⒄麄€迭代捕獲為一個圖,如前一節(jié)所述。

之前, NCCL 復制了圖中的所有權重,并執(zhí)行了一個 all REDUCT 函數(shù),該函數(shù)將所有權重相加。然后將更新后的權重寫回圖形。這需要數(shù)據(jù)的多個副本。

我們現(xiàn)在引入了用戶緩沖區(qū)注冊, NCCL 集體使用指針,以避免在與可伸縮分層聚合和縮減協(xié)議(SHARP)一起使用時來回復制數(shù)據(jù),該協(xié)議也是NVIDIA Magnum IO的一部分。在存在 CUDA 圖和 SHARP 的情況下,我們觀察到約 2% 的端到端額外加速。

NCCL 還實現(xiàn)了將縮放操作(乘以標量)融合到通信內(nèi)核中以減少數(shù)據(jù)拷貝,從而在通信密集型網(wǎng)絡(如 BERT )中額外節(jié)省約 3% 的端到端成本。

細粒重疊

在這一輪中,我們充分利用了 GPU 硬件的功能,使獨立計算塊能夠在多個核之間進行細粒度的重疊,并增加了通信和計算的重疊。這提高了性能,尤其是最大規(guī)模的訓練,在 Mask R-CNN 上提高了 10% ,在 DLRM 上提高了 27% 。

特別是對于 recommender systems benchmark ( DLRM ),我們利用軟件和硬件的功能,通過重疊多個操作高效地使用 GPU 資源:

重疊嵌入索引計算和所有減少集體的前一次迭代

重疊數(shù)據(jù)梯度和權重梯度計算

增加了數(shù)學和其他多 GPU 集體的重疊,如全對全

對于 3D UNet ,空間并行性能通過更有效地調(diào)度數(shù)學和通信內(nèi)核來提高,以增加兩者的重疊。

對于掩模 R-CNN ,我們實現(xiàn)了掩模頭、邊界盒頭和 RPN 頭的損耗計算重疊,以提高 GPU 在規(guī)模上的利用率。

通過更高效的內(nèi)存拷貝(矢量化)和內(nèi)核中更好的通信和數(shù)學重疊,我們顯著提高了多 GPU 組批處理規(guī)范( GBN )性能。這可以將工作負載擴展到 GPU 以上,從而為某些計算機視覺基準測試(如 ResNet50 和 SSD )節(jié)省 10% 以上的最大規(guī)模培訓,為 3D UNet 節(jié)省 5% 以上的培訓。

核融合與優(yōu)化

最后,在這一輪 MLPerf 中,我們首次將偏差梯度縮減融合到矩陣乘法核中(兩個操作的融合)。這將導致高達 3% 的性能改進。

模型優(yōu)化細節(jié)

在本節(jié)中,我們將深入討論每個工作負載上的優(yōu)化工作。

BERT

在后向傳遞中將偏置梯度減少融合到矩陣乘法中

cuBLAS庫最近引入了一種新的融合類型:在同一內(nèi)核中融合偏置梯度計算和權重梯度計算。

在這一輪中,我們使用 cuBLAS 功能在向后傳球中融合這兩個操作。我們還在正向傳遞中融合了偏置加法和矩陣乘法。圖 1 顯示了向前傳球和向后傳球的融合操作。

poYBAGJHwZiAEg3eAADj2fVwvOo892.png

圖 1 。在前向傳遞(左)和后向傳遞(右)中將其他操作與矩陣乘法融合

改進的融合多頭注意

在上一輪中,我們實現(xiàn)了多頭注意模塊的融合。此模塊跨num_sequences和num_heads變量使用并行性。這意味著在 GPU 上的不同流式多處理器( SMs )上同時調(diào)度的num_sequences*num_heads線程塊總數(shù)。num_heads在 MLPerf BERT 模型中為 16 ,并且當num_sequences小于 6 時,沒有足夠的線程塊填充 GPU ,從而限制了并行性。

在這一輪中,我們通過在注意力計算所需的批量矩陣乘法的序列維度上引入slicing來改進這些內(nèi)核,這有助于按比例提高并行性。這種優(yōu)化使最大規(guī)模的訓練場景的端到端加速約 8% ,其中每芯片批量較小。

使用 CUDA 圖捕獲完整迭代圖

正如前面關于communications library圖的部分所提到的,在這一輪中,我們將 BERT 的完整迭代捕獲到單個 CUDA 圖中。這是因為 CUDA NCCL 中支持 CUDA 圖形,以及PyTorch 框架. 由于 CPU 延遲和抖動在規(guī)模上有所減少,因此端到端節(jié)省了約 3% 。除此之外,在使用 CUDA 圖時,我們還利用了 NCCL 用戶緩沖區(qū)預注冊功能,從而使端到端性能提高了約 2% 。

將模型參數(shù)緩沖區(qū)設置為指向連續(xù)平面緩沖區(qū)

BERT 使用分布式優(yōu)化器加快優(yōu)化步驟。為了獲得最佳的全聚集性能,分布式優(yōu)化器中用于權重參數(shù)的中間緩沖區(qū)都應該是單個連續(xù)平面緩沖區(qū)的一部分。通過這種方式,我們可以更好地使用 GPU 互連,而不是在小的獨立張量上運行多個 all gather 函數(shù),方法是為一條大消息運行 all gather 。

另一方面,默認情況下, PyTorch 為前向傳遞期間使用的每個模型參數(shù)張量分配單獨的緩沖區(qū)。這需要一個額外的“取消平臺”步驟,如圖 2 所示,在迭代結(jié)束和下一個迭代開始之間。

在這一輪 MLPerf 中,我們使用了一個單獨的連續(xù)緩沖區(qū),其中每個參數(shù)張量作為一個大緩沖區(qū)的一部分彼此相鄰放置。這樣就不需要額外的取消緩沖步驟,如圖 2 所示。這種優(yōu)化可在最大規(guī)模配置下為 BERT 節(jié)省約 4% 的端到端性能,其中優(yōu)化器和參數(shù)拷貝的成本最為顯著。

pYYBAGJHwZmAa98JAAGNJK6tcmo518.png

Figure 2.在優(yōu)化前后迭代的幾個不同步驟之間,參數(shù)張量是如何在內(nèi)存中表示的。

DLRM

HugeCTR是 NVIDIAMerlin的一部分,是一個推薦系統(tǒng)專用培訓框架,它繼續(xù)支持 NVIDIA DLRM 提交。

混合嵌入索引預計算

在上一輪 MLPerf 中,我們實現(xiàn)了hybrid embedding,以減少 GPU 之間的通信。

盡管 HugeCTR 中實現(xiàn)的混合嵌入顯著減少了通信量,但它需要計算索引以確定在何處讀取和分發(fā)存儲在每個 GPU 上的嵌入向量。索引計算僅依賴于輸入數(shù)據(jù),這些數(shù)據(jù)在前面的幾次迭代中被預取到 GPU 上。因此,在 Hugetr 中,索引預計算被用作優(yōu)化,以隱藏在上一次迭代的通信內(nèi)核下計算索引的成本。

與訓練迭代中的索引預計算相同,用于評估的混合嵌入索引可以在第一次執(zhí)行評估時計算和緩存。它們可以在剩余的評估中重復使用,這完全消除了為后續(xù)評估計算指數(shù)的成本。

通信和計算之間的更好重疊

在 DLRM 中,為了促進模型并行訓練,在前進和后退階段分別需要兩個全對全集體。此外,在模型的數(shù)據(jù)并行部分的培訓結(jié)束時,還有一個 all REDUCT 集合。如何將計算與這些通信集體重疊是實現(xiàn) GPU 的高利用率和高訓練吞吐量的關鍵。為了實現(xiàn)更好的重疊,進行了一些優(yōu)化。圖 3 顯示了一次培訓迭代的簡化時間表。

在前向傳播階段,執(zhí)行底部 MLP ,同時將所有內(nèi)核轉(zhuǎn)發(fā)到所有內(nèi)核,等待數(shù)據(jù)到達。在反向傳播階段, all REDUCT 和 all to all 重疊以提高網(wǎng)絡的利用率。索引預計算還計劃與這兩個通信集體重疊,以使用 GPU 上的空閑資源,最大限度地提高訓練吞吐量。

poYBAGJHwZuAdiiAAABhe9_viE8762.png

圖 3 。訓練迭代的簡化時間軸視圖,說明計算和通信操作的細粒度重疊。

異步權重梯度計算

MLP 的數(shù)據(jù)梯度計算和權重梯度計算是共享相同輸入的兩個獨立計算分支。與數(shù)據(jù)梯度不同,在梯度全部減小之前,不需要權重梯度。由于 GPU 在調(diào)度內(nèi)核方面的靈活性,這兩個計算在 HUGETR 中并行執(zhí)行,最大限度地提高了 GPU 的利用率。

更好的融合

內(nèi)核融合是一種有效的方法,可以減少對內(nèi)存的訪問,提高 GPU 利用率。以前, DLRM 中利用了許多融合模式來實現(xiàn)更好的性能。例如,數(shù)據(jù)梯度計算、 ReLU 反向操作和偏置梯度計算可以通過 cuBLAS 在 HugeCTR 中融合在一起。這樣的跨層融合模式使得最后一次偏置梯度計算未被使用。

在這一輪中,利用 cuBLAS 中支持的 GEMM 和偏置梯度融合,將偏置梯度計算融合到 MLP 最后一層的權重梯度計算中。

另一個融合示例是權重轉(zhuǎn)換融合。為了支持混合精度訓練,訓練期間必須將 FP32 主砝碼轉(zhuǎn)換為 FP16 砝碼。作為優(yōu)化,該精密鑄造與 Hugetr 中的 SGD optimizer 融合。每當更新 FP32 主權重時,它都會將更新權重的 FP16 版本寫入內(nèi)存,從而無需單獨的內(nèi)核進行轉(zhuǎn)換。

面具 R-CNN

在這一輪中,為所有卷積層切換到 NHWC 布局,使用專用評估節(jié)點,并改進損耗計算重疊,為掩碼 R-CNN 工作負載提供了最大的改進。

對所有卷積層使用 NHWC 布局

ResNet-50 主干網(wǎng)已經(jīng)使用 NHWC 布局很長一段時間了,但該型號的其余部分直到現(xiàn)在都使用 NCHW 。

這一輪我們能夠?qū)?FPN 模塊(緊跟在 ResNet-50 主干之后)切換到 NHWC 。在 NHWC 中運行 FPN 意味著我們可以轉(zhuǎn)置輸出而不是輸入,這更有效,因為輸入比輸出大得多。這一變化將最大規(guī)模配置的性能提高了 4-5% 。

使用專用節(jié)點專門評估多節(jié)點場景

雖然評估與培訓重疊,但 Mask R-CNN 評估是一個資源密集型過程。當評估同時進行時,培訓績效不可避免地會受到輕微影響。對于最大規(guī)模配置,評估所需時間幾乎與培訓所需時間相同。在后臺持續(xù)運行評估顯著影響培訓績效。

克服此問題的一種方法是使用一組單獨的節(jié)點進行評估,即一組節(jié)點進行培訓,一組較小的節(jié)點進行評估。對最大規(guī)模配置實施此更改將端到端性能提高了 12% 。

使用多線程 COCO 評估

COCO 求值函數(shù)消耗了大部分求值時間,并分別在邊界框和分割掩碼結(jié)果上運行。幾輪之前,我們通過在多個進程中運行這兩個評估調(diào)用來重疊這兩個評估調(diào)用。

這一輪,我們?yōu)?COCO 評估循環(huán)啟用了 openmp 多線程處理。這是 COVIAPI 軟件英偉達版中的一個可選特性。通過提供指定所需線程數(shù)的可選參數(shù),可以并行化求值循環(huán)。此優(yōu)化將評估速度提高了約 10% ,但僅顯示最后一次評估,因此對端到端時間的影響要小得多,約為 0.5% 。

小批量運行占用率四倍的兩階段 top-K 計算

我們在 Mask R-CNN 打了幾個 top-K 電話,由于占用率低,需要很長時間。 top-K 內(nèi)核啟動的協(xié)作線程陣列或 CTA (線程塊)的數(shù)量與每 GPU 批大小成比例。最大規(guī)模配置使用的每 – GPU 批大小為 1 ,這導致僅啟動五個 CTA 。每個 CTA 分配一個 SMs ,而 A100 有 100 多個 SMs ,這表明 GPU 的利用率較低。

為了緩解這種情況,我們實施了兩階段方法:

在第一階段,我們將輸入分成四個相等的部分,然后通過一個調(diào)用對每個部分執(zhí)行 top-K 。

在第二階段,我們將四個臨時結(jié)果連接起來,并取其中的 top-K 。

這將產(chǎn)生與以前相同的結(jié)果,但運行速度快 3 倍以上,因為我們現(xiàn)在在第一階段推出了 20 個 CTA ,而不是 5 個。進一步劃分輸入會使第一階段更快,但也會使第二階段更慢。

將輸入分成八種方式,而不是四種方式,這意味著在第一階段將啟動 40 個 CTA ,而不是 20 個。第一階段只需一半的時間就可以完成,但不幸的是,第二階段的速度太慢了,采用四向分割的方式,整體性能會更好。對最大規(guī)模配置實施四向拆分可使性能提升 3-4% 。

遮罩頭部、邊界盒頭部和 RPN 頭部的重疊損失計算

Mask R-CNN 推出的大多數(shù) GPU 內(nèi)核在批量較小時占用率較低。緩解這種情況的一種方法是盡可能多地重疊執(zhí)行內(nèi)核,以利用 GPU 資源,否則這些資源就會閑置。

一些損失計算可以同時進行。對于遮罩水頭損失、邊界框損失和 RPN 水頭損失,這是正確的,因此我們將這三個損失計算分別放在不同的 CUDA 流上,以便它們可以同時執(zhí)行。這將最大規(guī)模配置的性能提高了約 5% 。

三維 UNet

矢量化連接和拆分操作

3D UNet 使用連接操作連接解碼器和編碼器激活。這將導致在向前和向后傳遞中為激活張量生成設備到設備的副本。我們通過使用矢量化加載和存儲優(yōu)化了這些拷貝,執(zhí)行了 4 倍寬的讀/寫操作。這使 concat 和 split 操作符的速度提高了 2.4 倍以上,在單節(jié)點配置下,端到端的加速比為 4.7% ,在最大規(guī)模配置下,端到端的加速比為 1.3% 。

高效空間并行卷積

在 MLPerf v1.0 中,我們引入了空間并行卷積,在這里我們將輸入激活拆分為多個 GPU (準確地說是 8 )??臻g并行卷積的實現(xiàn)使我們能夠?qū)灲粨Q隱藏在卷積后面的卷積后面。

在 MLPerf v1.1 中,我們優(yōu)化了通信和卷積操作的調(diào)度,以便在啟動的通信和卷積內(nèi)核之間獲得更好的重疊。雖然這確保了光暈交換不會暴露,但也有助于顯著降低抖動。此優(yōu)化調(diào)度將最大規(guī)模配置的分數(shù)提高了 25% 以上。

pYYBAGJHwZyAEvrrAAA6f8vTK9Q119.png

圖 4 ??臻g并行卷積:完全隱藏在卷積后面的光暈轉(zhuǎn)移

空間并行損耗計算

3D Unet 使用骰子損失和 Softmax 交叉熵損失作為其損失函數(shù)。骰子損失定義為以下公式:

在此公式中,Pi和Gi分別表示預測和地面真實的對應像素值對。

在最大比例配置中,由于單個 GPU 僅作用于圖像的一個切片,因此每個 GPU 僅包含Pi和Gi的一個切片。為了優(yōu)化損耗計算,我們獨立計算了每個 GPU 中的部分項,并通過 NVLink 在組中的所有 GPU 之間交換部分項。然后將這些部分項組合起來,形成骰子損失結(jié)果。這將損失計算速度提高了 4 倍以上,最大規(guī)模分數(shù)提高了 7% 。

更好的配置

我們將全局批處理大小增加為數(shù)據(jù)集大小的一個因素。 DALI 數(shù)據(jù)加載器庫使我們能夠使用同一個碎片為不同的時代進行訓練。這使我們能夠顯著減少在 GPU 中緩存數(shù)據(jù)集所需的時間。

由于每個 GPU 加載的圖像要少得多,因此 DALI 中的邊界框緩存升溫速度也要快得多。此優(yōu)化顯著縮短了啟動時間,并使 MLPerf v1.0 的加速比提高了 20% 。

數(shù)據(jù)并行異步計算

隨著培訓速度的加快,隱藏在培訓背后的規(guī)模評估變得具有挑戰(zhàn)性。在 MLPerf v1.1 中,單個圖像上的推斷在 GPU 上分片,以改進評估比例。然后收集所有推斷結(jié)果,形成最終輸出。這使得整個評估階段可以隱藏在培訓迭代之后。

更快的組實例規(guī)范

多 GPU InstanceRM 內(nèi)核通過并行化多通道塊的 GPU 間通信和通過矢量化內(nèi)存讀寫來減少內(nèi)核的 DRAM 時間而得到了顯著改進。這使得最大規(guī)模配置的吞吐量提高了 5% 以上。

ResNet-50

端到端 CUDA 圖

對于 ResNet-50 ,當基準擴展到> 256 個節(jié)點時,每 GPU 批大小減小到一個非常小的值,其中迭代時間僅為~ 8-10ms 。在這些非常小的迭代時間內(nèi),確保 GPU 執(zhí)行中沒有因 CPU 上運行的依賴項而產(chǎn)生的間隙是至關重要的。

對于 MLPerfV1.1 ,我們通過使用端到端技術減少了規(guī)模上的抖動CUDA 圖為了捕獲整個前向過程中的迭代,后向過程、優(yōu)化器和 Horovord / NCCL 梯度都減少為單個圖形。 CUDA 圖的使用在最大規(guī)模的培訓中提供了 6% 的性能優(yōu)勢。

GBN

隨著 ResNet50 規(guī)模的增加和本地批量的減少,為了實現(xiàn)盡可能快的收斂,我們使用 GBN 技術。對于每個 BatchNorm 層,在 GPU 組中,均數(shù)和方差均減少。

對于 MLPerf v1.1 ,通過并行化多個通道塊的 GPU 間通信,并通過矢量化內(nèi)存讀寫來減少內(nèi)核的 DRAM 時間,單個 DGX 節(jié)點內(nèi)的 GBN 性能得到了顯著改善。這在規(guī)模上提供了 10% 的性能優(yōu)勢。

固態(tài)硬盤

打開 – GPU 圖像緩存

圖像網(wǎng)絡大量使用圖像裁剪和調(diào)整大小來捕獲表示數(shù)據(jù)集更豐富統(tǒng)計信息的特征,并提高模型的泛化能力。

在以前的MLPRF回合中,SSD使用英偉達數(shù)據(jù)加載庫 (DALI) 圖像解碼特征來解碼JPG圖像的裁剪區(qū)域。此功能可避免在解碼整個圖像時浪費時間,尤其是在裁剪較小的情況下。

但是,這意味著該裁剪圖像只使用一次,因為該圖像未緩存在內(nèi)存中。原始圖像的未來使用可能會有不同的裁剪區(qū)域,這意味著每次使用原始圖像時都會對其進行解碼。這種行為會導致 GPU 之間的抖動,因為解碼成本隨裁剪所需區(qū)域的大小變化很大。這在擴展場景中尤其明顯。

在這一輪中,我們利用了每個 NVIDIA A100 80-GB GPU 可用的 80-GB 內(nèi)存容量,使用另一個 DALI 功能對整個圖像進行解碼并將其緩存在內(nèi)存中。這使得將來可以使用相同的圖像來避免解碼成本,而是直接從內(nèi)存中拾取裁剪區(qū)域。這樣做比每次解碼裁剪區(qū)域更便宜,并且運行時間和設備到設備的執(zhí)行時間差異要小得多。

總體而言,該優(yōu)化使單節(jié)點配置的端到端性能提高了 2% ,有效規(guī)模配置提高了約 5% ,規(guī)模介于單節(jié)點和最大規(guī)模之間。

用于 SSD 的 GBN ,

SSD 還利用了在 ResNet-50 中實現(xiàn)的 GBN 改進,在我們的最大規(guī)模配置中提供了約 4% 的 E2E 改進。

RNN-T

更優(yōu)化的頂點傳感器

apex中的傳感器模塊已進一步優(yōu)化,以提高訓練吞吐量。傳感器接頭和傳感器損耗模塊分別增加了兩個優(yōu)化。

傳感器接頭、 ReLU 和 dropout 是 RNN-T 中三個連續(xù)的內(nèi)存綁定操作。作為優(yōu)化, ReLU 和 dropout 已與 apex 中apex.contrib.transducer.TransducerJoint模塊中的傳感器接頭融合,有效地減少了到內(nèi)存的跳閘。

傳感器損耗的反向傳播是一種內(nèi)存密集型操作。 apex 中的apex.contrib.transducer.TransducerLoss中添加了一項優(yōu)化,對反向操作中的加載和存儲進行矢量化,從而提高了內(nèi)核的內(nèi)存帶寬利用率。

GPU 上的更多數(shù)據(jù)預處理

當 GPU 忙于向前和向后傳遞時,在 CPU 上預處理下一批數(shù)據(jù)可能會隱藏數(shù)據(jù)預處理時間。這是理想的。但是,當數(shù)據(jù)預處理是計算密集型的時, CPU 上的預處理時間可能會暴露出來。

DALI 可以利用 GPU 的大規(guī)模并行處理特性,通過計算 GPU 上的部分預處理來幫助卸載 CPU 。在本文中,靜默修剪操作被移動到 GPU ,從而提高了訓練吞吐量。

結(jié)論

基于成熟且經(jīng)驗證的 NVIDIA A100 GPU 和 NVIDIA DGX A100 平臺,在這一輪 MLPerf v1.1 培訓基準中,跨堆棧優(yōu)化繼續(xù)為基于 NVIDIA 平臺的提交提供全面的性能改進。

值得重申的是,英偉達平臺是唯一的解決方案,提交所有工作負載在 MLPRF 基準套件,展示了業(yè)界領先的性能和通用性。

所有用于 NVIDIA 提交的軟件都可以從 MLPerf 存儲庫中獲得,以使您能夠重現(xiàn)我們的基準測試結(jié)果。我們不斷地將這些尖端的 MLPerf 改進添加到NGC上提供的深度學習框架容器中,這是我們針對 GPU 優(yōu)化應用程序的軟件中心。

關于作者

Vinh Nguyen 是一位深度學習的工程師和數(shù)據(jù)科學家,發(fā)表了 50 多篇科學文章,引文超過 2500 篇。在 NVIDIA ,他的工作涉及廣泛的深度學習和人工智能應用,包括語音、語言和視覺處理以及推薦系統(tǒng)。

Sukru Burc Eryilmaz 是 NVIDIA 計算機體系結(jié)構的高級架構師,他致力于在單節(jié)點和超級計算機規(guī)模上改進神經(jīng)網(wǎng)絡訓練的端到端性能。他從斯坦福大學獲得博士學位,并從比爾肯特大學獲得學士學位。

Karthik Mandakolathur 是 NVIDIA Magnum IO 的產(chǎn)品經(jīng)理,專注于加速分布式 AI 、數(shù)據(jù)分析和 HPC 應用。憑借 20 多年的行業(yè)經(jīng)驗, Karthik 曾在 Broadcom 和 Cisco 擔任高級工程和產(chǎn)品職務。他在沃頓商學院獲得工商管理碩士學位,在斯坦福大學獲得工商管理碩士學位,在印度理工學院獲得工商管理學士學位。他在高性能交換架構領域擁有多項美國專利。

About Shar Narasimhan

Shar Narasimhan 是 AI 的高級產(chǎn)品營銷經(jīng)理,專門從事 NVIDIA 的 Tesla 數(shù)據(jù)中心團隊的深度學習培訓和 OEM 業(yè)務。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • NVIDIA
    +關注

    關注

    14

    文章

    5309

    瀏覽量

    106458
  • gpu
    gpu
    +關注

    關注

    28

    文章

    4949

    瀏覽量

    131288
  • MLPerf
    +關注

    關注

    0

    文章

    36

    瀏覽量

    824
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    新品 | Cardputer Accessory Kit v1.1 & Atomic GPS Base V2.0

    AtomicGPSBase的升級版本,在性能、定位精度等方面進行優(yōu)化,滿足更高要求的多模GNSS定位應用需求。1CardputerAccessoryKitv1.1Cardpu
    的頭像 發(fā)表于 07-04 17:39 ?653次閱讀
    新品 | Cardputer Accessory Kit <b class='flag-5'>v1.1</b> &amp;amp; Atomic GPS Base <b class='flag-5'>V</b>2.0

    快手上線鴻蒙應用高性能解決方案:數(shù)據(jù)反序列化性能提升90%

    近日,快手在Gitee平臺上線了鴻蒙應用性能優(yōu)化解決方案“QuickTransformer”,該方案針對鴻蒙應用開發(fā)中廣泛使用的三方庫“class-transformer”進行了深度優(yōu)化,有效
    發(fā)表于 05-15 10:01

    1.9倍性能提升!英特爾至強6在MLPerf基準測試中表現(xiàn)卓越

    與第五代至強處理器相比,英特爾至強6性能核的性能平均提高了1.9倍。 今日,MLCommons公布了最新的MLPerf推理v5.0基準測試結(jié)果,其中,英特爾??至強??6
    的頭像 發(fā)表于 04-07 10:58 ?281次閱讀

    新品 | Cardputer v1.1 與 Dial v1.1 Wi-Fi信號升級!更低功耗!

    更強性能和更多可能性。Cardputerv1.1性能/多功能/易拓展Cardputerv1.1是一款面向工程師的高性能卡片電腦,在原有Ca
    的頭像 發(fā)表于 03-07 18:43 ?677次閱讀
    新品 | Cardputer <b class='flag-5'>v1.1</b> 與 Dial <b class='flag-5'>v1.1</b> Wi-Fi信號升級!更低功耗!

    hyper-v 配置,Hyper-V配置:性能優(yōu)化與高級設置

    Hyper-V配置:性能優(yōu)化與高級設置。 ? ?Hyper-V配置:性能優(yōu)化與高級設置 ? ?在
    的頭像 發(fā)表于 02-08 09:49 ?1234次閱讀
    hyper-<b class='flag-5'>v</b> 配置,Hyper-<b class='flag-5'>V</b>配置:<b class='flag-5'>性能</b><b class='flag-5'>優(yōu)化</b>與高級設置

    hyper v 顯卡,Hyper-V 顯卡:提升Hyper-V的顯卡性能

    解決。今天就為大家介紹Hyper-V顯卡:提升Hyper-V的顯卡性能。 ? ?在虛擬化環(huán)境中,顯卡性能對于需要高圖形處理能力的應用場景(如
    的頭像 發(fā)表于 02-07 10:22 ?1212次閱讀
    hyper <b class='flag-5'>v</b> 顯卡,Hyper-<b class='flag-5'>V</b> 顯卡:<b class='flag-5'>提升</b>Hyper-<b class='flag-5'>V</b>的顯卡<b class='flag-5'>性能</b>

    hyper cpu,Hyper CPU優(yōu)化提升虛擬機性能

    提升虛擬機性能。 ? ?在虛擬化環(huán)境中,CPU性能優(yōu)化對于提升虛擬機的整體性能至關重要。Hyp
    的頭像 發(fā)表于 02-06 10:25 ?1094次閱讀
    hyper cpu,Hyper CPU<b class='flag-5'>優(yōu)化</b>:<b class='flag-5'>提升</b>虛擬機<b class='flag-5'>性能</b>

    hyper v 顯卡,hyper-v顯卡:如何在虛擬機中配置和優(yōu)化顯卡性能

    :如何在虛擬機中配置和優(yōu)化顯卡性能。 ? ?在虛擬化環(huán)境中,顯卡性能對于需要高圖形處理能力的應用場景(如游戲、圖形設計和視頻編輯)至關重要。Hyper-V提供了多種顯卡配置和
    的頭像 發(fā)表于 01-24 14:19 ?7515次閱讀
    hyper <b class='flag-5'>v</b> 顯卡,hyper-<b class='flag-5'>v</b>顯卡:如何在虛擬機中配置和<b class='flag-5'>優(yōu)化</b>顯卡<b class='flag-5'>性能</b>

    前端性能優(yōu)化提升用戶體驗的關鍵策略

    在互聯(lián)網(wǎng)飛速發(fā)展的今天,用戶對于網(wǎng)頁的加載速度和響應性能要求越來越高。前端性能優(yōu)化成為了提升用戶體驗、增強網(wǎng)站競爭力的關鍵策略。一個性能良好
    的頭像 發(fā)表于 01-22 10:08 ?485次閱讀

    如何通過OSI七層模型優(yōu)化網(wǎng)絡性能

    七層模型的各個層次,可以顯著提升網(wǎng)絡性能。以下是通過OSI七層模型優(yōu)化網(wǎng)絡性能的具體方法: 一、物理層優(yōu)
    的頭像 發(fā)表于 11-24 11:14 ?1020次閱讀

    NPU技術如何提升AI性能

    設計的處理器,與傳統(tǒng)的CPU和GPU相比,它在執(zhí)行深度學習任務時具有更高的效率和更低的能耗。NPU通過專門優(yōu)化的硬件結(jié)構和指令集,能夠更快地處理神經(jīng)網(wǎng)絡中的大量并行計算任務。 1. 優(yōu)化硬件架構 NPU技術
    的頭像 發(fā)表于 11-15 09:11 ?1464次閱讀

    HTTP海外訪問優(yōu)化提升跨國網(wǎng)絡性能的秘訣

    HTTP海外訪問優(yōu)化提升跨國網(wǎng)絡性能的關鍵,涉及多個方面的技術和策略。
    的頭像 發(fā)表于 10-15 08:04 ?714次閱讀

    浪潮信息AS13000G7榮獲MLPerf? AI存儲基準測試五項性能全球第一

    眾,在3D-UNet和CosmoFlow兩個模型共計八項測試中,斬獲五項冠軍。 MLPerf? Storage v1.0 AI存儲基準測試成績 MLPerf??是影響力最廣的國際AI性能
    的頭像 發(fā)表于 09-28 16:46 ?414次閱讀
    浪潮信息AS13000G7榮獲<b class='flag-5'>MLPerf</b>? AI存儲基準測試五項<b class='flag-5'>性能</b>全球第一

    堆棧和內(nèi)存的基本知識

    本文主要聊聊關于堆棧的內(nèi)容。包括堆棧和內(nèi)存的基本知識。常見和堆棧相關的 bug,如棧溢出,內(nèi)存泄漏,堆內(nèi)存分配失敗等。后面介紹軟件中堆棧統(tǒng)計的重要性,以及如何使用工具工具軟件中
    的頭像 發(fā)表于 08-29 14:10 ?1053次閱讀
    <b class='flag-5'>堆棧</b>和內(nèi)存的基本知識

    韓國服務器的性能如何提升

    韓國服務器的性能可以通過硬件升級、網(wǎng)絡優(yōu)化、緩存優(yōu)化和軟件優(yōu)化提升。具體方法如下,rak小編為
    的頭像 發(fā)表于 08-15 11:33 ?465次閱讀