基于FPGA加速機(jī)器學(xué)習(xí)算法
在這項(xiàng)研究中出現(xiàn)了一些和CNN算法實(shí)現(xiàn)能耗相關(guān)的幾個(gè)有趣的結(jié)論:
①限定使用片上Memory;
②使用更小的乘法器;
③進(jìn)行定點(diǎn)匹配:相對(duì)于32位定點(diǎn)或浮點(diǎn)計(jì)算,將定點(diǎn)計(jì)算結(jié)果精度降為16位。如果使用動(dòng)態(tài)量化,8位計(jì)算同樣能夠產(chǎn)生很好的結(jié)果。
在演講中Wittig還提到了CNN相關(guān)的兩款產(chǎn)品:CAPI-compatible Alpha DataADM-PCIE-8K5 PCIe加速卡和Auviz Systems提供的AuvizDNN(深度神經(jīng)網(wǎng)絡(luò))開發(fā)庫。
ADM-PCIE-8K5 PCIe加速卡
Alpha DataADM-PCIE-8K5 PCIe加速卡用于X86和IBM Power8/9數(shù)據(jù)中心和云服務(wù),加速卡基于Xilinx Kintex UltraScale KU115 FPGA,支持Xilinx SDAcess基于OpenCL、C/C++的開發(fā)和基于Vivado HLx的HDL、HLS設(shè)計(jì)流程。
Alpha DataADM-PCIE-8K5 PCIe加速卡片上帶32GB DDR4-2400內(nèi)存(其中16GB含ECC),雙通道SFP+支持雙通道10G以太網(wǎng)接入。提供包括高性能PCIe/DMA在內(nèi)的板級(jí)支持包(BSP) 、OpenPOWER架構(gòu)的CAPI、FPGA參考設(shè)計(jì)、即插即用的O/S驅(qū)動(dòng)和成熟的API等設(shè)計(jì)資源。
AuvizDNN開發(fā)庫
深度學(xué)習(xí)技術(shù)使用大量的已知數(shù)據(jù)來找出一組權(quán)重和偏置值來匹配預(yù)期結(jié)果。處理被稱之為訓(xùn)練,訓(xùn)練的結(jié)果是大量的模型,這一事實(shí)促使工程師們尋求使用GPU之類的專用硬件來進(jìn)行訓(xùn)練和分類計(jì)算。
隨著未來數(shù)據(jù)量的巨幅增長(zhǎng),機(jī)器學(xué)習(xí)將會(huì)搬到云端完成。這樣就急需一種既可以加速算法,又不會(huì)大規(guī)模增加功耗的處理平臺(tái),在這種情況下,F(xiàn)PGA開始登場(chǎng)。
隨著一些列的先進(jìn)開發(fā)環(huán)境投入使用,軟件開發(fā)工程師將他們的設(shè)計(jì)在Xilinx FPGA上實(shí)現(xiàn)變得更加容易。Auviz Systems開發(fā)的AuvizDNN庫為用戶提供優(yōu)化的函數(shù)接口,用戶可以針對(duì)不同的應(yīng)用創(chuàng)建自定義的CNN。這些函數(shù)可以方便的通過Xilinx SDAcess這樣的集成開發(fā)環(huán)境調(diào)用。在創(chuàng)建對(duì)象和數(shù)據(jù)池后,就會(huì)調(diào)用函數(shù)創(chuàng)建每一個(gè)卷積層、然后是致密層,最后是 softmax層,如下圖2所示。
評(píng)論