- Advertisement -
首頁 技術頻道 緩解資料移動/存取瓶頸 HBM大幅加速AI應用

緩解資料移動/存取瓶頸 HBM大幅加速AI應用

- Advertisement -

本文將以賽靈思(Xilinx)旗下解決方案為例,透過深度學習和資料庫加速的案例,闡述一個均衡且支援三星HBM2的賽靈思運算加速器系統,如何提供具備最佳靈活性、效率和效能的高效運算加速解決方案。

近年異質運算逐漸興起,拓寬了後摩爾定律時代在加速運算密集型作業負載的創新。在當前資料中心產業中,普遍採用異質運算進行加速的作業負載種類繁多,包含人工智慧、即時視訊轉碼和基因組分析,而這些僅僅是其中的一小部分。

然而,長期以來,DDR記憶體架構的演進並不足以跟上運算加速領域的創新步伐。在過去十年裡,並行記憶體介面的頻寬效能雖有改善但進展緩慢;現今FPGA所支援的最大DDR4資料速率仍然只有2008年DDR3的2倍左右。相比之下,自2008年以來,FPGA的運算能力已提高了近8倍,且隨著配有AI核心的Versal元件推出後,預計未來兩年內還有更大的成長空間。因此,在資料中心領域,記憶體頻寬與容量將成為眾多運算和記憶體頻寬密集型作業負載發展的主要限制因素(圖1)。

圖1 運算容量的提升與DDR頻寬的改善比較

HBM效能/傳輸更高更快

HBM是一種高速的系統級封裝(SiP)記憶體技術,與採用傳統打線接合封裝(Wire Bonding-based Package)的記憶體產品相比,它使用垂直互聯的DRAM晶片堆疊和一個寬(1024位元)介面,來達到更大的儲存容量與更高的資料頻寬。聯合電子裝置技術協會(JEDEC)在2013年開始採用初代HBM標準,並在2016年1月批准第二代HBM2版本為業界標準。

HBM2標準支援4個或8個8Gb的DRAM晶粒逐個堆疊在一起,由一個2.5D矽「中介層」提供支援,該「中介層」可將記憶體堆疊與底層電路板連接起來。堆疊一些晶粒(通常是記憶體)而不是其他晶粒(通常是處理器)的多晶片封裝被稱為2.5D元件(圖2)。

圖2 HBM和2.5D架構

由於多個堆疊能被添加在同一個封裝中,因此與傳統的多晶片DRAM產品相比,當堆疊多個晶粒在一個電路板上並將其堆疊得更緊密時,可以大幅減少HBM記憶體封裝的水平占板面積。此外,HBM技術還縮短了訊號在元件之間的傳輸距離,因此可以提高系統效能,且較短的傳輸距離可以減少傳輸定量資料所需的能量(圖3)。

圖3 HBM晶粒堆疊技術

HBM具備先進的TSV技術、微尺度互連和突破極限的I/O數量,可以增加記憶體頻寬,與其最強勁的競爭對手,也就是用於繪圖卡的繪圖用雙倍資料傳輸率(GDDR)記憶體相比,HBM明顯能提供更高的效能。在元件級別,單個三星HBM立方體可以提供高達307GB/s的資料頻寬,比GDDR5晶片高出近10倍的資料傳輸率。而在系統級別,與採用GDDR的解決方案相比,HBM能提供近3倍的輸送量,並使用少於80%的功耗,同時還可以節省寶貴的電路空間(圖4)。

圖4 HBM與GDDR頻寬比較

FPGA元件助力 記憶體頻寬再上層樓

以下將以賽靈思旗下FPGA產品為例,該公司支援HBM的Virtex UltraScale+ FPGA大幅改善了記憶體頻寬,例如2個三星HBM2記憶體堆疊就可提供高達460GB/s的速率。當將1或2個HBM2堆疊與各種尺寸的FPGA邏輯(多達285萬個邏輯單元)和DSP(高達9,024個DSP48E2分割,可提供28.1峰值INT8 TOP)進行配對時,使用者就可以選擇搭配全新支援HBM的UltraScale+元件系列,為其應用選擇最佳的運算能力與記憶體頻寬/容量組合。

另一方面,除了支援HBM的Virtex UltraScale+FPGA,賽靈思還推出Alveo U280資料中心加速器卡,由16奈米UltraScale+架構所打造,採用8GB三星HBM2,可為資料庫搜尋與分析、機器學習推論及其他記憶體限制應用提供更高等級的加速功能;並涵蓋了CCIX支援,可以利用現有的伺服器互聯基礎設施和即將推出的CCIX處理器,提供高頻寬、低延遲的快取一致性共用記憶體存取。許多受限於記憶體的應用都能受益於支援HBM的UltraScale+元件,本文將以深度神經網路與資料庫加速方面的案例為例,展示支援HBM的UltraScale+元件之優勢。

強化記憶體頻寬提升AI語言翻譯效能

如今,各種雲端應用都有提供自動即時語言翻譯服務,其可透過採用神經網路的機器學習方法在兩種語言之間翻譯語句(稱為機器翻譯),編碼器-解碼器架構強化當今的商業自動化翻譯服務。

在使用機器執行翻譯任務時,兩種語言的單詞經由一個稱為單詞嵌入的過程,以高維向量的形式呈現;因此,單詞之間的關係可以透過向量進行量化建模和反映。遞迴神經網路、卷積神經網路和基於注意力的模型等架構通常用於執行編碼和解碼功能。

近期研究表示,在語言翻譯中,只有採用注意力的網路能達到最高的準確性。研究論文中所描述的注意力機制,即縮放點積注意力,是由兩個矩陣乘法和其他函數(Scale、Mask和Softmax)所構成的。多頭注意力結構通常由多個並行的縮放點積注意力與不同的輸入投影構成,該結構與前饋網路被共同用於建構整個語言翻譯模型的解碼器和編碼器(圖5)。

圖5 轉換器–基於注意力神經網路的語言翻譯模型

如圖5所示,基於注意力的語言翻譯模型的主要運算強度來自於對縮放點積注意力和前饋網路的點積運算。這些點積通常被組合到矩陣乘法運算,以達到更高效的運算。然而,與在整個空間中大量重複使用權重參數以減少資料移動痕跡的傳統卷積神經網路不同,這類基於注意力的模型幾乎不重複使用輸入空間參數,導致對矩陣乘法運算的記憶體頻寬要求要高出許多。

我們建置了一個用於語言翻譯且基於注意力的先進神經網路的轉換器分析模型,並將其映射在UltraScale+元件上運行。FPGA建置方案的架構採用DSP脈動陣列來執行矩陣乘法,中間的啟動資料儲存在晶載URAM中,可以消除啟動時所造成在處理器和外接記憶體之間頻繁進行的資料移動。HBM或DDR則用於儲存所有嵌入字典的單詞嵌入與權重參數。

針對具有不同句子長度(L)和句子數量的英德翻譯任務,也稱為批量大小(B),對其進行分析就可以瞭解附加DDR的UltraScale+元件和支援HBM的UltraScale+元件對於延遲和傳輸量之間的權衡。這一研究對於DDR與HBM的建置,假設使用具有256個16位元輸入和32個16位元輸出的脈動陣列,並將其運行在710MHZ的UltraScale+元件上。詳細的傳輸量與延遲關係圖請見圖6。

圖6 採用具有HBM和DDR4的UltraScale+元件進行語言翻譯效能分析。

長度為8的句子在4條通道上運行的最低延遲約為15.7ms,傳輸量為508符號/秒。一條DDR通道用於存取單詞嵌入資料,其餘三條DDR通道用於載入權重。對於支援HBM的元件而言,一個長度為8的句子之最小延遲為2.2ms,比DDR介面低7倍以上。DDR介面在兩種句子長度上都不能達到7ms以下的延遲,但是支援HBM的元件在傳輸量為10,419符號/秒,且句子長度為8的情況下可達到6.1ms的延遲,在輸送量為4,682符號/秒,且句子長度為16的情況下可達到6.8ms的延遲。

借助通用矩陣運算資料庫加速AI應用

與前面討論的機器翻譯案例一樣,幾乎所有現代深層神經網路(深度學習)的主要運算都是以矩陣乘法的形式來完成。除了機器翻譯以外,在資料中心廣泛部署的其他典型深度學習應用有影像/視訊分析、網路搜尋的搜尋排名系統、廣告投放的推薦系統、內容/來源推薦、語音辨識以及自然語言處理。

為了更佳地支援更多的深度學習應用,賽靈思開發了通用矩陣運算(GEMX)資料庫,用於加速元件上的矩陣運算,該元件由SDAccel開發環境提供支援。該資料庫包括三個組件:引擎庫、主機代碼編譯器與以應用或系統建構的環境,引擎庫則由一組具有BLAS函數介面的C++範本組成,可以在FPGA上進行矩陣運算。

主機代碼編譯器將主機代碼矩陣函式呼叫編譯成一系列指令,用於觸發FPGA上的矩陣運算,建構環境採用GNU make流將FPGA和主機代碼影像生成過程自動化。此外,該產品還支援使用者對系統的各個方面進行配置,例如,FPGA平台、FPGA影像中建置的引擎數量等。

雖然GEMX引擎的兩個輸入矩陣都來自DDR記憶體,但GEMX的傳輸量取決於DDR介面的頻寬。圖7的分析比較了使用DDR4連接UltraScale+元件的GEMX與使用支援HBM的UltraScale+元件的GEMX之效能。該分析模型充分利用了記憶體頻寬,並假設使用32×32×128的矩陣作為GEMX的輸入。結果如圖7所示,與使用4條DDR通道相比,支援HBM的元件可以將GEMX的效能提升約3.6倍。

圖7 GEMX效能

HBM讓記憶體存取/使用更有效

受益於HBM記憶體控制器中的靈活定址方式,支援HBM的UltraScale+元件具備的獨特優勢之一就是HBM通道的靈活並行使用。HBM通道的存取與使用,是能夠完全地被可重配置和重新編程,還可以通過FPGA邏輯輕鬆存取。

如圖8所示,使用者可以將原始資料庫檔案剝離到多個HBM通道中,並讓並行處理運算單元執行不同的資料庫操作,以獨立並行存取資料庫的不同部分而無需進行同步。這一特性有助於改善即時案例中的操作延遲並有效地使用HBM,因為所有運算單元都可以即時回應資料庫查詢,毋須批次處理或同步。在上述機器翻譯案例中,該特性還用於分離兩個通道進行單詞嵌入存取,而其餘通道則用於高頻寬權重參數傳輸。

圖8 靈活的並行記憶體通道存取

雖然三星HBM在AI和資料庫加速等案例中的重要性已得到證實,但還有很多其他的資料中心作業負載也可從HBM中顯著獲益。總而言之,在資料中心領域,隨著異質運算加速的發展趨勢以及運算設備技術的創新,迫切需要在運算單元附近附加像HBM這樣的高效能記憶體系統;而支援HBM的UltraScale+元件具有獨特的價值,以深度學習和資料庫加速為例,賽靈思支援HBM的UltraScale+元件就發揮出運算加速的新潛力,並將其引領至更高的水準。

(本文由賽靈思提供)

相關文章

- Advertisement -
- Advertisement -

最新文章

- Advertisement -

熱門文章

- Advertisement -

編輯推薦

- Advertisement -