軟件友好型的硬件提供了最大的靈活性,敲開了高性能數(shù)據(jù)加速的大門
在云計(jì)算和邊緣計(jì)算中,業(yè)界渴求能夠支持各種應(yīng)用的高性能。為了滿足這一需求。
亞馬遜(Amazon)、Facebook和微軟(Microsoft)等超大規(guī)模用戶采用的第一批加速器都是大幅度定制的設(shè)計(jì)。這些公司能夠在打造自己的板卡設(shè)計(jì)中確保所需的規(guī)模經(jīng)濟(jì),無論是基于自己設(shè)計(jì)的專用集成電路(ASIC),還是采用現(xiàn)成的FPGA和GPU。從成本和時(shí)間的角度來看,對(duì)于企業(yè)數(shù)據(jù)中心和邊緣計(jì)算用戶來說,他們難以在這種定制芯片級(jí)設(shè)計(jì)中找到合理的規(guī)模。然而,設(shè)計(jì)定制的ASIC和板卡并不是必需的。對(duì)諸如以太網(wǎng)和PCIe等標(biāo)準(zhǔn)接口的需求,不僅使使用標(biāo)準(zhǔn)板卡級(jí)產(chǎn)品成為可能,而且也是可取的。
作為一家長(zhǎng)期提供硬件加速產(chǎn)品的供應(yīng)商,BittWare一直在為從高性能計(jì)算到云加速到儀器儀表等眾多領(lǐng)域內(nèi)的客戶設(shè)計(jì)采用PCIe尺寸的、基于FPGA的板卡,并在這方面積累了豐富的經(jīng)驗(yàn)?,F(xiàn)在,作為Molex集團(tuán)的子公司,BittWare能夠充分借助其全球供應(yīng)網(wǎng)絡(luò)以及與戴爾(Dell)和惠普企業(yè)(HP Enterprise)等服務(wù)器供應(yīng)商的深厚關(guān)系。BittWare是唯一一家可與多家主流FPGA供應(yīng)商合作的重要批量化供應(yīng)商,能夠滿足企業(yè)客戶的質(zhì)量認(rèn)證、驗(yàn)證、產(chǎn)品生命周期管理和支持需求,這些客戶希望為關(guān)鍵任務(wù)型應(yīng)用去大規(guī)模部署FPGA加速器。
在這些應(yīng)用中,BittWare實(shí)現(xiàn)的一個(gè)重要差異化在于該公司為其基于FPGA的加速器提供了廣泛的軟件支持。每個(gè)加速卡均配有適用于Linux和Windows系統(tǒng)的驅(qū)動(dòng)軟件,可通過PCIe和以太網(wǎng)連接將其快速集成到各種系統(tǒng)中。除了支持主CPU和加速卡之間的通信外,該驅(qū)動(dòng)還支持接入加速卡上的嵌入式固件。這個(gè)固件可以處理眾多管理和自檢功能。
它們使FPGA電路能夠根據(jù)需要的新功能重新進(jìn)行配置,此外還提供了一些對(duì)功耗、電壓和溫度的監(jiān)測(cè)程序。如果主機(jī)系統(tǒng)中的冷卻功能失效,那么擔(dān)任管理者的固件可以關(guān)閉加速卡,以避免熱過載。此外,軟件組合包還包括各種參考設(shè)計(jì),以便開發(fā)人員能夠快速構(gòu)建配置,使他們可以測(cè)試加速卡的功能并開始在其自己的應(yīng)用上工作。
對(duì)于最新一代的加速卡,BittWare與Achronix緊密合作。Achronix是唯一一家能夠同時(shí)提供獨(dú)立FPGA芯片和嵌入式FPGA(eFPGA)半導(dǎo)體知識(shí)產(chǎn)權(quán)(IP)的FPGA供應(yīng)商。VectorPath?S7t-VG6加速卡使用了Achronix采用7nm 工藝打造的、結(jié)合了很多功能的Speedster®7t FPGA芯片,不僅可以在內(nèi)部提供高吞吐量數(shù)據(jù)加速,而且還支持現(xiàn)今從機(jī)器學(xué)習(xí)到先進(jìn)儀器等系統(tǒng)所需的高度分布式、網(wǎng)絡(luò)化的架構(gòu)。
圖1:VectorPath S7t-VG6加速卡
軟件友好型的硬件提供了最大的靈活性
通過對(duì)分布式架構(gòu)提供直接支持,VectorPath S7t-VG6加速卡中使用的Speedster7t FPGA芯片標(biāo)志著與傳統(tǒng)FPGA架構(gòu)不同的重大轉(zhuǎn)變,它使面向軟件的開發(fā)人員更容易地構(gòu)建定制化的處理單元。這種創(chuàng)新的全新架構(gòu)與諸如英特爾(Intel)和賽靈思(Xilinx)等供應(yīng)商生產(chǎn)的傳統(tǒng)FPGA完全不同,傳統(tǒng)FPGA的設(shè)計(jì)關(guān)注點(diǎn)并不在數(shù)據(jù)加速。
在設(shè)計(jì)Speedster7t的架構(gòu)時(shí),Achronix創(chuàng)建了一種可最大限度地提高系統(tǒng)吞吐量的FPGA芯片,同時(shí)還為計(jì)算機(jī)架構(gòu)師和開發(fā)人員提高了易用性。與傳統(tǒng)的FPGA架構(gòu)相比,Speedster7t FPGA芯片的一個(gè)關(guān)鍵差異化點(diǎn)在于它包括一個(gè)創(chuàng)新的二維片上網(wǎng)絡(luò)(2D NoC),可以在邏輯陣列內(nèi)的處理單元與各種片上高速接口和存儲(chǔ)器端口之間流傳數(shù)據(jù)。
傳統(tǒng)的FPGA要求用戶去設(shè)計(jì)電路來將其加速器連接到高速以太網(wǎng)或PCIe數(shù)據(jù)端口和/或存儲(chǔ)器端口。通常,一個(gè)獨(dú)立系統(tǒng)是由連接到多個(gè)高速端口的多個(gè)加速器組成。例如,下圖就說明了一種場(chǎng)景,其中有兩個(gè)加速器連接到兩個(gè)存儲(chǔ)端口上,以共享一個(gè)存儲(chǔ)空間。這種場(chǎng)景使用了FIFO來管理存儲(chǔ)器和FPGA時(shí)鐘之間的時(shí)鐘域交叉(CDC)。此外,F(xiàn)PGA邏輯架構(gòu)中還需要一個(gè)交換功能來管理尋址、仲裁和反壓。在傳統(tǒng)的FPGA中,這項(xiàng)功能會(huì)消耗大量的FPGA資源,并且其復(fù)雜程度足以降低系統(tǒng)性能并使時(shí)序收斂變得復(fù)雜。
Achronix采用了由軟件設(shè)計(jì)來實(shí)現(xiàn)硬件的方法,而這種硬件中的以太網(wǎng)和其他高速I / O端口可用二維片上網(wǎng)絡(luò)(2D NoC)輕松地連接到定制的加速器功能上。Speedster7t NoC不再需要設(shè)計(jì)CDC和交換功能來將加速器連接到高速數(shù)據(jù)或內(nèi)存端口。通過簡(jiǎn)單地將這些功能連接到NoC,就消除了連接方面的難題,從而簡(jiǎn)化了設(shè)計(jì),減少了FPGA資源的消耗,提高了性能并簡(jiǎn)化了時(shí)序收斂。
圖2:傳統(tǒng)FPGA設(shè)計(jì)面臨的挑戰(zhàn)
圖3:Speedster7t二維片上網(wǎng)絡(luò)支持軟件友好型硬件
為了實(shí)現(xiàn)高性能的算術(shù)運(yùn)算,每個(gè)Speedster7t器件都具有一個(gè)大型可編程計(jì)算單元陣列,它們被有序地放置在機(jī)器學(xué)習(xí)處理器(MLP)單元模塊中。MLP是一個(gè)高度可配置的計(jì)算密集型單元模塊,在每個(gè)周期內(nèi)可支持多達(dá)32個(gè)乘法/累加(MAC)運(yùn)算。在以加速器為中心的設(shè)計(jì)中,MLP的存在使得在完全可編程邏輯和硬連線算術(shù)單元之間能夠有效地共享資源。
盡管有些FPGA傾向于使用HBM2存儲(chǔ)器,其中FPGA和存儲(chǔ)器被組裝成一個(gè)昂貴的2.5D封裝,而Speedster7t系列卻采用GDDR6內(nèi)存標(biāo)準(zhǔn)接口。這種接口提供了當(dāng)今片外存儲(chǔ)器可實(shí)現(xiàn)的最高性能,并且成本顯著降低,從而使團(tuán)隊(duì)更容易去實(shí)現(xiàn)帶有高帶寬存儲(chǔ)陣列的加速器。一個(gè)GDDR6存儲(chǔ)控制器可以支持512 Gbps的帶寬。VectorPath S7t-VG6加速卡可提供八組存儲(chǔ)器,總存儲(chǔ)帶寬可以達(dá)到4 Tbps。此外,板上還有一個(gè)DDR4接口,可用于訪問頻率較低或不需要GDDR6吞吐量的數(shù)據(jù)。
VectorPath S7t-VG6加速卡提供了許多高性能接口,用來支持分布式架構(gòu)和高速主機(jī)通信?,F(xiàn)在,該加速卡提供了PCIe Gen 3.0的16通道合規(guī)性和認(rèn)證,并提供獲取Gen 4和Gen 5資質(zhì)認(rèn)證的途徑。在以太網(wǎng)連接方面,該加速卡采用已獲得廣泛支持的光學(xué)接口模塊,依據(jù)QSFP-DD和QSFP56標(biāo)準(zhǔn),能夠處理高達(dá)400 Gbps的超高線速。
在加速卡的另一端還有一個(gè)OCuLink擴(kuò)展端口,以支持很多其他的低延遲應(yīng)用場(chǎng)景。例如,OCuLink端口可用于將加速卡連接到各種外圍設(shè)備上,比如用于計(jì)算存儲(chǔ)或數(shù)據(jù)庫加速應(yīng)用的NVMe存儲(chǔ)陣列。與采用連接到主處理器的PCIe接口相比,OCuLink連接能夠成為一個(gè)更好的選擇,因?yàn)樗峁┝艘环N消除了系統(tǒng)級(jí)延遲和抖動(dòng)的高確定性的連接。OCuLink端口還可以引入其他網(wǎng)絡(luò)連接,從而可擴(kuò)展實(shí)現(xiàn)QSPF-DD或QSFP56之外的各種端口規(guī)格。
圖4:VectorPath的網(wǎng)絡(luò)和存儲(chǔ)接口
在VectorPath S7t-VG6加速卡的前面板上還包括多個(gè)時(shí)鐘輸入,它們是在將多個(gè)加速卡同步到一起時(shí)通常需要的。兩個(gè)SMB時(shí)鐘輸入連接器支持從1PPS和10 MHz的時(shí)鐘輸入,它們?cè)谶M(jìn)入FPGA之前,就已被連接到抖動(dòng)清除器。一旦進(jìn)入FPGA,這些時(shí)鐘就可以被倍頻或分頻成為特定應(yīng)用所需的頻率。
還可以通過通用數(shù)字I / O端頭進(jìn)行進(jìn)一步擴(kuò)展。該I / O端口支持單端3.3V連接和低電壓差分(LVDS)信號(hào),支持外部時(shí)鐘、觸發(fā)器和專用I / O等自定義信號(hào)直接連接到Speedster7t FPGA。該擴(kuò)展端口還可用于將VectorPath加速卡改造為傳統(tǒng)硬件。
圖5:VectorPath時(shí)鐘輸入和GPIO
適用于小批量和大批量需求
VectorPath S7t-VG6加速卡已考慮到了每個(gè)細(xì)節(jié),例如可支持被動(dòng)和主動(dòng)空氣散熱和液體散熱。此外,BittWare和Achronix還為醫(yī)療等需要更長(zhǎng)產(chǎn)品生命周期的領(lǐng)域確保提供長(zhǎng)期的供應(yīng)與支持。在這些市場(chǎng)中,基于GPU的PCIe加速卡較短的產(chǎn)品生命周期與超過10年的系統(tǒng)服務(wù)支持需求是不符的。
對(duì)于更大批量需求,特別是在邊緣計(jì)算等場(chǎng)景中,客戶可以使用BittWare的成本降低計(jì)劃來簡(jiǎn)化硬件,其設(shè)計(jì)僅僅支持客戶所需的I / O選項(xiàng)。此外,BittWare也可提供電路板設(shè)計(jì)文件以及VectorPath S7t-VG6加速卡隨附的軟件和驅(qū)動(dòng)器的使用。利用Achronix的Speedcore eFPGA IP,也可以走向定制系統(tǒng)級(jí)芯片(SoC)器件。客戶可以構(gòu)建自己其中包括Speedster7t可編程性的SoC,但又具有ASIC的成本結(jié)構(gòu)。
為了實(shí)現(xiàn)更好的開發(fā)和更便捷的部署,VectorPath S7t-VG6加速卡可以由BittWare以其TeraBox平臺(tái)的形式來提供預(yù)先集成的多核服務(wù)器。外形從2U到5U,TeraBox的機(jī)架式機(jī)箱最多可容納16個(gè)BittWare PCIe加速卡,并由雙路英特爾(Intel) Xeon處理器管理。作為一個(gè)完整的解決方案,TeraBox為客戶提供了啟動(dòng)和運(yùn)行FPGA開發(fā)的最快機(jī)制。在Bittworks II和FPGA Devkit軟件的支持下,用戶可以直接使用TeraBox并立即開始開發(fā)工作。或者,客戶也可以從Dell和HP Enterprise購買包含BittWare加速卡的預(yù)配置服務(wù)器。
圖6:TeraBox平臺(tái)的部署