AMD Versal AI Core 系列和 Versal AI Edge 系列旨在憑借 AI 引擎機(jī)器學(xué)習(xí) ( ML ) 架構(gòu)來提供突破性的 AI 推斷加速。這些器件的設(shè)計(jì)應(yīng)用范圍廣泛,包括用于云端動態(tài)工作負(fù)載以及超高帶寬網(wǎng)絡(luò),同時(shí)還可提供高級安全性功能。AI 和數(shù)據(jù)科學(xué)家以及軟硬件開發(fā)者均可充分利用高計(jì)算密度的優(yōu)勢來加速提升任何應(yīng)用的性能。AI 引擎機(jī)器學(xué)習(xí)擁有先進(jìn)的張量計(jì)算能力,非常適合用于高度優(yōu)化的 AI 和 ML 應(yīng)用。
AI 引擎機(jī)器學(xué)習(xí)器件包含二維陣列,由帶有單指令流多數(shù)據(jù)流 ( SIMD ) 矢量單元的超長指令字 ( VLIW ) 處理器構(gòu)成,專為計(jì)算密集型應(yīng)用而高度優(yōu)化,特別適用于機(jī)器學(xué)習(xí) ( ML ) 等 AI 技術(shù)。
AI 引擎機(jī)器學(xué)習(xí)陣列支持三種級別并行度:
指令級并行度 ( ILP ):通過 VLIW 架構(gòu),允許在單個(gè)時(shí)鐘周期內(nèi)執(zhí)行多次運(yùn)算。 | |
SIMD:通過矢量寄存器,允許并行執(zhí)行多項(xiàng)計(jì)算。 | |
多核:通過 AI 引擎機(jī)器學(xué)習(xí)陣列,支持并行執(zhí)行多個(gè) AI 引擎機(jī)器學(xué)習(xí)核。 |
指令級并行度包括 1 次標(biāo)量操作、1 次移動、2 次矢量讀取(加載)、1 次矢量寫入(存儲)和 1 條可執(zhí)行的矢量指令,總計(jì)每個(gè)時(shí)鐘周期達(dá) 6 路 VLIW 指令。數(shù)據(jù)級并行度是通過矢量級操作來實(shí)現(xiàn)的,其中每個(gè)時(shí)鐘周期可執(zhí)行多組數(shù)據(jù)操作。
每個(gè) AI 引擎機(jī)器學(xué)習(xí)都包含矢量處理器和標(biāo)量處理器、專用程序存儲器、本地 64 KB 數(shù)據(jù)存儲器、支持訪問其本身和三個(gè)相鄰 AI 引擎機(jī)器學(xué)習(xí)內(nèi)的本地存儲器。它還可訪問 DMA 引擎和 AXI4 互連開關(guān),以通過串流來與其他 AI 引擎機(jī)器學(xué)習(xí)進(jìn)行通信或者與可編程邏輯 ( PL ) 或 DMA 進(jìn)行通信。請參閱《Versal 自適應(yīng) SoC AIE ML 架構(gòu)手冊》 ( AM020 ) 以獲取有關(guān) AI 引擎機(jī)器學(xué)習(xí)陣列和接口的具體詳細(xì)信息。
雖然對于 AI 引擎機(jī)器學(xué)習(xí)而言,大部分標(biāo)準(zhǔn) C 語言代碼均可編譯,但代碼可能需要重構(gòu)才能充分利用硬件所提供的并行度。AI 引擎機(jī)器學(xué)習(xí)的優(yōu)勢在于,它能夠在每個(gè)時(shí)鐘周期內(nèi)使用 2 個(gè)矢量執(zhí)行乘積累加 ( MAC ) 運(yùn)算、為下一項(xiàng)運(yùn)算加載 2 個(gè)矢量、存儲來自上一項(xiàng)運(yùn)算的單個(gè)矢量,并遞增一個(gè)指針或執(zhí)行另一次標(biāo)量運(yùn)算。稱為本征函數(shù)的專用函數(shù)允許您以 AI 引擎機(jī)器學(xué)習(xí)矢量處理器和標(biāo)量處理器為目標(biāo),并提供多個(gè)常用矢量函數(shù)和標(biāo)量函數(shù)的實(shí)現(xiàn),使您能夠?qū)W⒂谔幚砟繕?biāo)算法。AI 引擎機(jī)器學(xué)習(xí)不僅包含其矢量單元,還包含一個(gè)標(biāo)量單元用于所有標(biāo)準(zhǔn) C 語言代碼程序。
AI 引擎機(jī)器學(xué)習(xí)程序使用以 C++ 編寫的數(shù)據(jù)流計(jì)算圖(自適應(yīng)數(shù)據(jù)流計(jì)算圖)規(guī)格。此規(guī)范可使用 AI 引擎編譯器進(jìn)行編譯并執(zhí)行。自適應(yīng)數(shù)據(jù)流 ( ADF ) 計(jì)算圖應(yīng)用由多個(gè)節(jié)點(diǎn)和邊緣組成,其中節(jié)點(diǎn)表示計(jì)算內(nèi)核函數(shù),邊緣則表示數(shù)據(jù)連接。應(yīng)用中的內(nèi)核可編譯為在 AI 引擎機(jī)器學(xué)習(xí)上運(yùn)行,這些內(nèi)核構(gòu)成了 ADF 計(jì)算圖規(guī)范的基礎(chǔ)構(gòu)建塊。ADF 計(jì)算圖屬于 Kahn 進(jìn)程網(wǎng)絡(luò),其中包含并行運(yùn)行的 AI 引擎內(nèi)核。AI 引擎內(nèi)核在數(shù)據(jù)串流和緩沖器上執(zhí)行運(yùn)算。這些內(nèi)核會耗用輸入數(shù)據(jù)塊并生成輸出數(shù)據(jù)塊。內(nèi)核還可包含靜態(tài)數(shù)據(jù)或運(yùn)行時(shí)參數(shù) ( RTP ) 實(shí)參,包括異步實(shí)參或同步實(shí)參。
下圖顯示
ADF 計(jì)算圖的概念視圖及其與處理器系統(tǒng) ( PS )、可編程邏輯 ( PL ) 和 DDR 存儲器的對接接口。它包括:
AI 引擎機(jī)器學(xué)習(xí):每個(gè) AI 引擎機(jī)器學(xué)習(xí)都是一個(gè) VLIW 處理器,其中包含一個(gè)標(biāo)量單元、一個(gè)矢量單元、兩個(gè)加載單元和一個(gè)存儲單元。
AI 引擎內(nèi)核:內(nèi)核是以 AI 引擎機(jī)器學(xué)習(xí)中運(yùn)行的 C/C++ 編寫的。
ADF 計(jì)算圖:ADF 計(jì)算圖是具有單個(gè)或多個(gè) AI 引擎內(nèi)核(以數(shù)據(jù)串流和/或緩沖器連接)的 Kahn 進(jìn)程網(wǎng)絡(luò)。它憑借如下特定構(gòu)造來與 PL、全局存儲器和 PS 進(jìn)行交互,此類構(gòu)造有:PLIO(計(jì)算圖中的端口屬性,用于建立往來可編程邏輯的串流連接)、GMIO(計(jì)算圖中的端口屬性,用于建立往來全局存儲器的外部存儲器映射連接)和 RTP。
如需了解有關(guān) AI 引擎機(jī)器學(xué)習(xí)存儲器拼塊訪問的信息,請參閱 AI 引擎機(jī)器學(xué)習(xí)存儲器拼塊訪問。如需了解有關(guān) AI 引擎機(jī)器學(xué)習(xí)外部存儲器訪問的信息,請參閱 AI 引擎機(jī)器學(xué)習(xí)外部存儲器訪問。
本文檔第 2 章到第 5 章聚焦 AI 引擎內(nèi)核編程,不僅涉及單內(nèi)核編程,還涵蓋了多方面的內(nèi)容,如內(nèi)核之間的數(shù)據(jù)通信,這些內(nèi)容都是將應(yīng)用分區(qū)為多個(gè)內(nèi)核以達(dá)成所需的吞吐量所必不可少的概念。
本文檔第 6 到 14 章焦點(diǎn)包括 AI 引擎計(jì)算圖編程構(gòu)造、內(nèi)核之間的數(shù)據(jù)通信類型、通過主機(jī)應(yīng)用來控制 AI 引擎計(jì)算圖以及高級計(jì)算圖編程構(gòu)造。
-
處理器
+關(guān)注
關(guān)注
68文章
19740瀏覽量
232872 -
AI
+關(guān)注
關(guān)注
87文章
33554瀏覽量
274196 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8481瀏覽量
133855
原文標(biāo)題:AI 引擎機(jī)器學(xué)習(xí)內(nèi)核與計(jì)算圖編程指南
文章出處:【微信號:賽靈思,微信公眾號:Xilinx賽靈思官微】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
RISC-V如何支持不同的AI和機(jī)器學(xué)習(xí)框架和庫?
機(jī)器學(xué)習(xí)實(shí)踐指南——案例應(yīng)用解析
Firefly支持AI引擎Tengine,性能提升,輕松搭建AI計(jì)算框架
【AI學(xué)習(xí)】AI概論:(Part-A)與AI智慧交流
【AI學(xué)習(xí)】AI概論:(Part-B)AI頭腦+機(jī)器人行為
AI概論: <TensorFlow + Excel>可操作教案(Part-C:AI(機(jī)器)是如何學(xué)習(xí)呢?)
最值得學(xué)習(xí)的機(jī)器學(xué)習(xí)編程語言
AI+機(jī)器學(xué)習(xí):推動AI應(yīng)用產(chǎn)業(yè)化,加快機(jī)器學(xué)習(xí)步伐
賽靈思AI引擎簡介
火山引擎機(jī)器學(xué)習(xí)平臺與NVIDIA加深合作
AI引擎架構(gòu)和陣列編程要求
Versal ACAP AI引擎編程環(huán)境用戶指南

AI引擎內(nèi)核編碼最佳實(shí)踐指南

AI引擎內(nèi)核與計(jì)算圖編程指南

面向AI與機(jī)器學(xué)習(xí)應(yīng)用的開發(fā)平臺 AMD/Xilinx Versal? AI Edge VEK280

評論