資料介紹
描述
“整個(gè)互聯(lián)網(wǎng)電子商務(wù)世界都是由圖分析驅(qū)動(dòng)的”,因?yàn)閳D結(jié)構(gòu)可以自然地代表許多重要應(yīng)用領(lǐng)域的數(shù)據(jù)集,例如社交網(wǎng)絡(luò)、網(wǎng)絡(luò)安全和機(jī)器學(xué)習(xí)。來自這些應(yīng)用程序的數(shù)據(jù)對(duì)高性能圖形處理提出了迫切的需求。
大量研究構(gòu)建基于 FPGA 的高效圖形處理加速器;但是,高級(jí)圖形應(yīng)用程序與底層 CPU-FPGA 平臺(tái)之間仍然存在差距,這需要開發(fā)人員了解硬件細(xì)節(jié)并進(jìn)行大量編程(例如,使用硬件描述語(yǔ)言進(jìn)行編程、調(diào)整管道和進(jìn)行內(nèi)存優(yōu)化) . 這一差距在很大程度上阻礙了數(shù)據(jù)中心應(yīng)用程序開發(fā)人員采用 FPGA。
ThunderGP 有什么大不了的?
ThunderGP 通過為 FPGA 加速圖形處理帶來性能和可編程性來彌補(bǔ)上述差距,并已在FPGA'21中被接受。
ThunderGP 是 FPGA 上基于 HLS 的開源圖形處理框架,支持 Vitis 和 SDAccel 開發(fā)環(huán)境,適用于 Xilinx Alveo 平臺(tái),如 U50、U200、U250 和 VCU1525。使用 ThunderGP,開發(fā)人員只需要編寫使用基于顯式高級(jí)語(yǔ)言 (C++) 且與硬件無關(guān)的 API 的高級(jí)函數(shù)。隨后,ThunderGP 在具有多個(gè)超級(jí)邏輯區(qū)域 (SLR) 的最先進(jìn) FPGA 平臺(tái)上自動(dòng)生成高性能加速器并管理加速器的部署。
ThunderGP 的概述如圖 1 所示。我們簡(jiǎn)要說明主要構(gòu)建塊如下。
- 內(nèi)置加速器模板。ThunderGP 采用 Gather-Apply-Scatter (GAS) 模型作為各種圖算法的抽象,并通過內(nèi)置的高并行和內(nèi)存高效的加速器模板來實(shí)現(xiàn)模型。
- 自動(dòng)加速器生成。自動(dòng)加速器生成可產(chǎn)生可合成的加速器,釋放底層 FPGA 平臺(tái)的全部潛力。除了內(nèi)置加速器模板外,它還采用圖形算法的分散、聚集和應(yīng)用階段(來自 GAS 模型)和 FPGA 平臺(tái)模型(例如,U50)的用戶定義函數(shù) (UDF) ) 來自開發(fā)人員作為輸入。
- 圖分區(qū)和調(diào)度。ThunderGP 采用基于目標(biāo)頂點(diǎn)的垂直分區(qū)方法,無需引入邊緣排序等繁重的預(yù)處理操作,即可通過片上 RAM 實(shí)現(xiàn)頂點(diǎn)緩沖。
- 高級(jí)API。ThunderGP 提供了兩組基于 C++ 的 API:用于自定義圖形算法加速器的加速器 API (Acc-API) 和用于加速器部署和執(zhí)行的 Host-API。
有關(guān) GAS 模型、API 和 ThunderGP 設(shè)計(jì)的詳細(xì)信息,請(qǐng)參閱ThunderGP 技術(shù)報(bào)告(附件或GitHub 上)。
ThunderGP 的易用性如何?
我們進(jìn)行了一個(gè)案例研究——使用 Vitis 2020.1 在 Alveo U50 板上進(jìn)行 COVID-19 的傳播預(yù)測(cè)——以展示 ThunderGP 如何輕松應(yīng)用于現(xiàn)實(shí)生活中的圖形處理問題。
及時(shí)預(yù)測(cè)人口水平上隨時(shí)間變化的感染流行率對(duì)于部署適當(dāng)?shù)姆怄i措施(例如隔離或社交距離)以減輕病毒傳播具有重要作用。當(dāng)前的傳播預(yù)測(cè)模型一般由空間元胞自動(dòng)機(jī)(CA)和時(shí)間易感感染清除(SIR)模型組成,其中單元代表一個(gè)居民區(qū)(如縣)并保持其狀態(tài)(如感染率)由 SIR 模型根據(jù)相鄰小區(qū)之間的傳輸進(jìn)行更新。因此,傳播可以表述為一個(gè)圖處理問題,其中縣及其連接由圖表示,并且 SIR 通過圖中的傳播更新。
我們使用 ThunderGP 實(shí)現(xiàn)了三個(gè)傳播模型:CA-SIR [1]、CA-SEIR [2] 和 CA-SAIR [3] 模型。該數(shù)據(jù)集來自 COVID-19 影響分析平臺(tái) [4],包含 3.1K 縣和 2.3M 連接。
在這里,我們展示了為清單 1 中的 CA-SAIR 模型實(shí)現(xiàn)加速器的示例。對(duì)于分散階段,每個(gè)縣(一個(gè)小區(qū))根據(jù)其感染率及其連接強(qiáng)度計(jì)算感染率以推送到相鄰縣它量化了縣際流動(dòng)的數(shù)量和頻率。對(duì)于聚集階段,該縣會(huì)累積推到它的所有感染率。在申請(qǐng)階段,收集到的感染率用于計(jì)算感染率。注意apply階段涉及到很多用戶自定義參數(shù)(ThunderGP支持apply階段自定義參數(shù),詳見技術(shù)報(bào)告)。
圖 2 顯示了使用公共數(shù)據(jù)集進(jìn)行預(yù)測(cè)一周后美國(guó)感染風(fēng)險(xiǎn)的可視化。結(jié)果與在 CPU 端執(zhí)行的開源 Python 程序 [3] 相匹配。
表 1 量化了 ThunderGP 在此任務(wù)上所涉及的開發(fā)工作,并顯示了與基于 Python 的 CPU 實(shí)現(xiàn)的性能比較[3]。根據(jù)結(jié)果??,使用 ThunderGP 解決這個(gè)問題的好處是雙重的。首先,ThunderGP 比基于 CPU 的解決方案實(shí)現(xiàn)了高達(dá)419 倍的加速。能夠在短時(shí)間內(nèi)預(yù)測(cè)傳播可以幫助對(duì)傳播狀況做出快速及時(shí)的反應(yīng)。其次,CA-SIR 模型隨著對(duì)病毒認(rèn)識(shí)的不斷深入而快速發(fā)展。使用 ThunderGP,開發(fā)者只需編寫幾十行代碼用于加速預(yù)測(cè)通常一天,這最大限度地減少了開發(fā)工作。這個(gè)初步結(jié)果是有希望的,并且系統(tǒng)是開源的,我們相信可以進(jìn)行更多的案例研究來進(jìn)一步評(píng)估可編程性的改進(jìn)。
[1] 馬富恩特斯等人。物理學(xué) A:統(tǒng)計(jì)力學(xué)及其應(yīng)用,1999。
[2] 何塞 M Carcione 等人。基于確定性 seir 模型的 covid-19 流行病模擬。arXiv,2020 年。
[3] 周一望等。用于告知美國(guó)縣級(jí) covid-19 風(fēng)險(xiǎn)的時(shí)空流行病學(xué)預(yù)測(cè)模型。哈佛數(shù)據(jù)科學(xué)評(píng)論,2020 年。
[4] 馬里蘭大學(xué) COVID-19 影響分析平臺(tái)。https: //data.covid.umd.edu,2020-09-10。
ThunderGP 的效率如何?
如前所述,已有大量基于 FPGA 的圖形處理加速器的研究工作。在本章中,我們將與最先進(jìn)的設(shè)計(jì)進(jìn)行公平比較,以展示 ThunderGP 的效率。數(shù)據(jù)集和圖應(yīng)用請(qǐng)參考ThunderGP 技術(shù)報(bào)告。
我們首先將 ThunderGP 與最先進(jìn)的基于 RTL 的工作:Hitgraph [1] 進(jìn)行比較,如表 2 所示。性能指標(biāo)是每秒百萬邊緣遍歷 (MTEPS)。所有的實(shí)現(xiàn)都基于四個(gè) SLR,但不同之處在于 HitGraph 沒有考慮使用多個(gè) SLR 的開銷,因?yàn)樗男阅苁腔谀M的,只是簡(jiǎn)單地縮放到多個(gè) SLR 的內(nèi)存帶寬。性能加速高達(dá) 2.9 倍。更重要的是我們讓設(shè)計(jì)在真實(shí)硬件上執(zhí)行。
然后我們將 ThunderGP 與基于 HLS 的框架進(jìn)行比較:Chen 等人。[2] 和 GraphOps[3]。由于他們的實(shí)驗(yàn)不是使用多個(gè) SLR 進(jìn)行的,因此內(nèi)存帶寬較少,為了進(jìn)行公平比較,我們使用帶寬效率 (MTEPS/(GB/s)) 作為衡量標(biāo)準(zhǔn)。如表 3 所示,ThunderGP 比 GraphOps 實(shí)現(xiàn)了高達(dá) 29.2 倍的絕對(duì)加速和 12.3 倍的帶寬效率提升,比 Chen 等人實(shí)現(xiàn)了 5.2 倍的絕對(duì)加速和 2.4 倍的帶寬效率提升。
加速來自 ThunderGP 的先進(jìn)設(shè)計(jì)。請(qǐng)查看技術(shù)報(bào)告了解更多設(shè)計(jì)細(xì)節(jié)。
[ 1 ]周世杰等.HitGraph:FPGA 上的高吞吐量圖處理框架。TPDS,2019 年。
[2] 陳新宇等。用于在基于 opencl 的 fpgas 上進(jìn)行圖形處理的動(dòng)態(tài)并行數(shù)據(jù)混洗。FPL,2019
[3] Tayo Oguntebi 等人。Graphops:用于圖形分析加速的數(shù)據(jù)流庫(kù)。FPGA,2016 年。
讓我們開始使用 ThunderGP!
到目前為止,您可能對(duì) ThunderGP 感興趣!
不用擔(dān)心,我們?cè)?GitHub 存儲(chǔ)庫(kù)中提供了使用 ThunderGP 的分步指南。
對(duì)于第一級(jí)使用,我們?yōu)橹恍枰獌?nèi)置圖形處理算法的用戶編寫指南。
對(duì)于二級(jí)使用,我們引導(dǎo)用戶使用系統(tǒng)提供的API為自己的應(yīng)用定制加速器。
查看 README https://github.com/Xtra-Computing/ThunderGP/tree/develop_u50 中的詳細(xì)說明。
?
- 使用Vivado高層次綜合(HLS)進(jìn)行FPGA設(shè)計(jì)的簡(jiǎn)介
- 如何使用HLS加速FPGA上的FIR濾波器
- 國(guó)產(chǎn)FPGA研究框架.zip
- FPGA圖像處理應(yīng)用詳細(xì)介紹 50次下載
- 基于STM32移植UCGUI圖形界面框架(3.9.0源碼版本) 0次下載
- FPGA在視頻處理中的應(yīng)用綜述 18次下載
- 基于FPGA和DSP的機(jī)載圖形顯示系統(tǒng) 36次下載
- 如何使用FPGA實(shí)現(xiàn)順序形態(tài)圖像處理器的硬件實(shí)現(xiàn) 8次下載
- 如何使用FPGA實(shí)現(xiàn)飛機(jī)座艙圖形顯示加速系統(tǒng)的設(shè)計(jì) 5次下載
- 終止通知:HLS-442_HLS440P_HPS-100_EN000135_1-00.pdf
- Matlab圖形處理的函數(shù)詳細(xì)資料說明 6次下載
- 基于DirectFB和Cairo的圖形處理 2次下載
- 基于FPGA的機(jī)載視頻圖形顯示系統(tǒng)設(shè)計(jì) 21次下載
- 使用Vivado高層次綜合 (HLS)進(jìn)行FPGA設(shè)計(jì)的簡(jiǎn)介 65次下載
- 圖形處理器的流執(zhí)行模型
- 一種在HLS中插入HDL代碼的方式 492次閱讀
- 使用VVAS調(diào)用HLS生成硬件加速器的主要流程 561次閱讀
- VVAS調(diào)用HLS生成的硬件加速器的主要流程 604次閱讀
- HLS協(xié)議實(shí)現(xiàn) 679次閱讀
- 雷達(dá)信號(hào)處理:FPGA還是GPU? 1944次閱讀
- Vitis HLS知識(shí)庫(kù)總結(jié) 3242次閱讀
- 如何利用HLS功能創(chuàng)建圖像處理解決方案 3320次閱讀
- XIlinx利用HLS進(jìn)行加速設(shè)計(jì)進(jìn)度 6541次閱讀
- 以FPGA機(jī)載為核心的實(shí)時(shí)視頻圖形處理系統(tǒng)設(shè)計(jì) 2281次閱讀
- 新思科技Synphony HLS解決方案 1584次閱讀
- FPGA設(shè)計(jì)中的HLS 工具應(yīng)用 7324次閱讀
- 基于FPGA處理器的C編譯指令 2584次閱讀
- 多核處理器會(huì)取代FPGA嗎? 983次閱讀
- FPGA專家教您如何在FPGA設(shè)計(jì)中使用HLS 3572次閱讀
- 使用教程分享:在Zynq AP SoC設(shè)計(jì)中高效使用HLS IP(一) 3500次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多