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

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

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

基于FPGA的GNN加速器頂層架構(gòu)

65eE_Broadcom_C ? 來源:Achronix ? 作者:Achronix ? 2021-08-27 09:44 ? 次閱讀

接上一篇......

GNN加速器頂層架構(gòu)

此GNN加速器是為GraphSAGE算法設計的,但是它的設計也可以應用于其他類似的GNN算法加速。其頂層架構(gòu)如下圖所示。

該架構(gòu)由以下模塊組成:

圖中的GNN內(nèi)核是算法實現(xiàn)的核心部分(詳情如下)。

RoCE-Lite是RDMA協(xié)議的輕量級版本,用于通過高速以太網(wǎng)進行遠程存儲訪問,以支持海量節(jié)點的圖計算。

400GE以太網(wǎng)控制器用于承載RoCE-Lite協(xié)議。

GDDR6存儲器用于存儲GNN處理過程中所需的高速訪問數(shù)據(jù)(DDR4作為備用大容量存儲器)。該存儲器用于存儲訪問頻率相對較低的數(shù)據(jù),例如待預處理的圖形數(shù)據(jù)。

PCIeGen5 ×16 接口提供高速主機接口,用于與服務器軟件進行數(shù)據(jù)交互。

上述所有模塊均通過具有高帶寬的NoC實現(xiàn)互連。

GNN內(nèi)核微架構(gòu)

在開始討論GNN內(nèi)核的微架構(gòu)之前,有必要先回顧一下GraphSAGE算法。其內(nèi)層循環(huán)的聚合和合并(包括卷積)占據(jù)了該算法的大部分計算和存儲訪問。通過研究,我們得出這兩個步驟的特點,具體如下。

表2:GNN算法中聚合和合并操作的對比(來源:https://arxiv.org/abs/1908.10834)

步驟 聚合操作 合并操作
存儲訪問方式 間接訪問,不規(guī)則 直接訪問,規(guī)則
數(shù)據(jù)重用
計算模式 動態(tài),不規(guī)則 靜態(tài),規(guī)則
計算量
性能瓶頸 存儲 計算

可以看出,聚合操作和合并操作在計算和存儲訪問模式上有著完全不同的需求。聚合操作涉及相鄰節(jié)點的采樣。然而,圖形是一種非歐幾里得數(shù)據(jù)類型——它的大小和維度是不確定且無序,矩陣稀疏,節(jié)點位置隨機。因此,存儲訪問是不規(guī)則的,并且難以重復利用數(shù)據(jù)。

在合并操作中,輸入數(shù)據(jù)是聚合結(jié)果(節(jié)點的低維表示)和權(quán)重矩陣。它的大小和維度是固定的,具有線性存儲位置。因此對存儲訪問沒有挑戰(zhàn),但是矩陣的計算量非常大。 基于上述分析,我們決定在GNN內(nèi)核加速器設計中選擇使用兩種不同的硬件結(jié)構(gòu)來分別處理聚合和合并操作(如下圖示):

聚合器——通過單指令多數(shù)據(jù)(SIMD)處理器陣列,對圖形相鄰節(jié)點進行采樣和聚合。單指令可以預定義為mean()平均值計算,或其他適用的聚合函數(shù);多數(shù)據(jù)是指單次mean()均值計算中需要多個相鄰節(jié)點的特征數(shù)據(jù)作為輸入,這些數(shù)據(jù)來自子圖采樣器。SIMD處理器陣列通過調(diào)度器Agg Scheduler進行負載平衡。子圖采樣器通過NoC從GDDR6或DDR4讀回的鄰接矩陣和節(jié)點特征數(shù)據(jù)h0v分別緩存在鄰接列表緩沖區(qū)(Adjacent ListBuffer)和節(jié)點特征緩沖區(qū)(Node Feature Buffer)。聚合的結(jié)果hkN(v)存儲在聚合緩沖區(qū)(Aggregation Buffer)中。

合并器——通過脈動矩陣PE對聚合結(jié)果進行卷積運算。卷積核是Wk權(quán)重矩陣。卷積結(jié)果由ReLU激活函數(shù)進行非線性處理,同時也存儲在PartialSum Buffer中,以用于下一輪迭代。

合并結(jié)果經(jīng)過L2BN標準化處理后,即為最終的節(jié)點表示hkv。在一個典型的節(jié)點分類預測應用中,節(jié)點表示hkv可以通過一個全連接層(FC)來獲取節(jié)點的分類標簽。這個過程是傳統(tǒng)的機器學習處理方法之一,在GraphSAGE文獻資料中沒有體現(xiàn),這個功能也沒有包含在這個架構(gòu)中。

責任編輯:haq

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

    關(guān)注

    1625

    文章

    21637

    瀏覽量

    601336
  • 加速器
    +關(guān)注

    關(guān)注

    2

    文章

    790

    瀏覽量

    37691
  • GNN
    GNN
    +關(guān)注

    關(guān)注

    1

    文章

    31

    瀏覽量

    6325

原文標題:白皮書:一種基于FPGA的圖神經(jīng)網(wǎng)絡加速器解決方案(WP024)(第二部分)

文章出處:【微信號:Broadcom_China,微信公眾號:博通Broadcom】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    數(shù)據(jù)中心加速器就看GRVI Phalanx FPGA加速器

    數(shù)據(jù)中心采用FPGA加速器已經(jīng)成為主流,像MS的Catapult,Amazon基于Xilinx FPGA的AWS F1,Intel的Altera,Baidu公司等
    的頭像 發(fā)表于 10-16 11:49 ?8854次閱讀
    數(shù)據(jù)中心<b class='flag-5'>加速器</b>就看GRVI Phalanx <b class='flag-5'>FPGA</b><b class='flag-5'>加速器</b>

    機器學習實戰(zhàn):GNN(圖神經(jīng)網(wǎng)絡)加速器FPGA解決方案

    GNN架構(gòu)在宏觀層面有著很多與傳統(tǒng)CNN類似的地方,比如卷積層、Polling、激活函數(shù)、機器學習處理(MLP)和FC層等等模塊,都會在GNN中得以應用。
    發(fā)表于 10-19 17:05 ?2751次閱讀
    機器學習實戰(zhàn):<b class='flag-5'>GNN</b>(圖神經(jīng)網(wǎng)絡)<b class='flag-5'>加速器</b>的<b class='flag-5'>FPGA</b>解決方案

    #硬聲創(chuàng)作季 電子制作:磁性加速器

    加速器DIY
    Mr_haohao
    發(fā)布于 :2022年10月19日 00:19:38

    機器學習實戰(zhàn):GNN加速器FPGA解決方案

    與Achronix的Speedster7t1500 FPGA解決方案5.1 GNN加速器頂層架構(gòu)GNN
    發(fā)表于 10-20 09:48

    GNN(圖神經(jīng)網(wǎng)絡)硬件加速FPGA實戰(zhàn)解決方案

    5.1GNN加速器頂層架構(gòu)GNN加速器針對GraphSAGE進行設計,但其
    發(fā)表于 07-07 08:00

    一種基于FPGA的圖神經(jīng)網(wǎng)絡加速器解決方案

    在硬件層面進行升級和重新配置。復雜的設計豐富的硬IP減少開發(fā)時間、降低復雜性,NoC簡化模塊之間的互連并改善時序GNN加速器頂層架構(gòu)GNN
    發(fā)表于 09-25 17:20

    【書籍評測活動NO.18】 AI加速器架構(gòu)設計與實現(xiàn)

    經(jīng)驗總結(jié)圖解NPU算法、架構(gòu)與實現(xiàn),從零設計產(chǎn)品級加速器當前,ChatGPT和自動駕駛等技術(shù)正在為人類社會帶來巨大的生產(chǎn)力變革,其中基于深度學習和增強學習的AI計算扮演著至關(guān)重要的角色。新的計算范式需要
    發(fā)表于 07-28 10:50

    《 AI加速器架構(gòu)設計與實現(xiàn)》+第2章的閱讀概括

    首先感謝電子發(fā)燒友論壇提供的書籍和閱讀評測的機會。 拿到書,先看一下封面介紹。這本書的中文名是《AI加速器架構(gòu)設計與實現(xiàn)》,英文名是Accelerator Based on CNN Design
    發(fā)表于 09-17 16:39

    高級語言(HLL)標準擴展大大簡化基于FPGA加速器的應用程序的開發(fā)

    擴展和利用FPGA實現(xiàn)加速的應用等內(nèi)容。Convey公司制造了一整套的基于FPGA的硬件加速器板卡,支持PCIe計算接口和服務系統(tǒng)包裹Wo
    發(fā)表于 02-08 12:34 ?422次閱讀
    高級語言(HLL)標準擴展大大簡化基于<b class='flag-5'>FPGA</b><b class='flag-5'>加速器</b>的應用程序的開發(fā)

    優(yōu)化基于FPGA的深度卷積神經(jīng)網(wǎng)絡的加速器設計

    CNN已經(jīng)廣泛用于圖像識別,因為它能模仿生物視覺神經(jīng)的行為獲得很高識別準確率。最近,基于深度學習算法的現(xiàn)代應用高速增長進一步改善了研究和實現(xiàn)。特別地,多種基于FPGA平臺的深度CNN加速器被提出
    發(fā)表于 11-17 13:31 ?7986次閱讀

    基于Xilinx FPGA的Memcached硬件加速器的介紹

    本教程討論基于Xilinx FPGA的Memcached硬件加速器的技術(shù)細節(jié),該硬件加速器可為10G以太網(wǎng)端口提供線速Memcached服務。
    的頭像 發(fā)表于 11-27 06:41 ?3693次閱讀

    基于FPGA的SIMD卷積神經(jīng)網(wǎng)絡加速器

    一種基于FPGA的SIM卷積神經(jīng)網(wǎng)絡加速器架構(gòu)。以YOOV2目標檢測算法為例,介紹了將卷積神經(jīng)網(wǎng)絡模型映射到FPGA上的完整流程;對加速器
    發(fā)表于 05-28 14:00 ?24次下載

    基于FPGA的深度學習CNN加速器設計方案

    因為CNN的特有計算模式,通用處理對于CNN實現(xiàn)效率并不高,不能滿足性能要求。 因此,近來已經(jīng)提出了基于FPGA,GPU甚至ASIC設計的各種加速器來提高CNN設計的性能。
    發(fā)表于 06-14 16:03 ?2224次閱讀
    基于<b class='flag-5'>FPGA</b>的深度學習CNN<b class='flag-5'>加速器</b>設計方案

    Rapanda流加速器-實時流式FPGA加速器解決方案

    電子發(fā)燒友網(wǎng)站提供《Rapanda流加速器-實時流式FPGA加速器解決方案.pdf》資料免費下載
    發(fā)表于 09-13 10:17 ?0次下載
    Rapanda流<b class='flag-5'>加速器</b>-實時流式<b class='flag-5'>FPGA</b><b class='flag-5'>加速器</b>解決方案

    粒子加速器加速原理是啥呢?

    粒子加速器加速原理是啥呢? 粒子加速器是一種重要的實驗設備,用于研究粒子物理學、核物理學等領(lǐng)域。其主要原理是通過電場和磁場的作用,對帶電粒子進行加速,在高速運動過程中使其獲得較大的動
    的頭像 發(fā)表于 12-18 13:52 ?1942次閱讀