人工智能芯片F(xiàn)PGA與ASIC分別有著怎樣的發(fā)展
隨著人工智能產(chǎn)業(yè)鏈的火速延伸,GPU并不能滿足所有場景(如手機(jī))上的深度學(xué)習(xí)計算任務(wù), GPU并不是深度學(xué)習(xí)算力痛點的唯一解。目前以深度學(xué)習(xí)為代表的人工智能計算需求,主要采用GPU、FPGA等已有適合并行計算的通用芯片來實現(xiàn)加速。
在產(chǎn)業(yè)應(yīng)用沒有大規(guī)模興起之時,使用這類已有的通用芯片可以避免專門研發(fā)定制芯片(ASIC)的高投入和高風(fēng)險。但是,由于這類通用芯片設(shè)計初衷并非專門針對深度學(xué)習(xí),因而天然存在性能、功耗等方面的瓶頸。隨著人工智能應(yīng)用規(guī)模的擴(kuò)大,這類問題將日益突出。
一項深度學(xué)習(xí)工程的搭建,可分為訓(xùn)練(training)和推斷(inference)兩個環(huán)節(jié):訓(xùn)練環(huán)境通常需要通過大量的數(shù)據(jù)輸入,或采取增強(qiáng)學(xué)習(xí)等非監(jiān)督學(xué)習(xí)方法,訓(xùn)練出一個復(fù)雜的深度神經(jīng)網(wǎng)絡(luò)模型。訓(xùn)練過程由于涉及海量的訓(xùn)練數(shù)據(jù)(大數(shù)據(jù))和復(fù)雜的深度神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),需要的計算規(guī)模非常龐大,通常需要GPU集群訓(xùn)練幾天甚至數(shù)周的時間,在訓(xùn)練環(huán)節(jié)GPU目前暫時扮演著難以輕易替代的角色。
推斷(inference)環(huán)節(jié)指利用訓(xùn)練好的模型,使用新的數(shù)據(jù)去“推斷”出各種結(jié)論,如視頻監(jiān)控設(shè)備通過后臺的深度神經(jīng)網(wǎng)絡(luò)模型,判斷一張抓拍到的人臉是否屬于黑名單。雖然推斷環(huán)節(jié)的計算量相比訓(xùn)練環(huán)節(jié)少,但仍然涉及大量的矩陣運算。在推斷環(huán)節(jié),除了使用CPU或GPU進(jìn)行運算外,F(xiàn)PGA以及ASIC均能發(fā)揮重大作用。
FPGA(可編程門陣列,F(xiàn)ield Programmable Gate Array)是一種集成大量基本門電路及存儲器的芯片,可通過燒入FPGA配置文件來來定義這些門電路及存儲器間的連線,從而實現(xiàn)特定的功能。而且燒入的內(nèi)容是可配置的,通過配置特定的文件可將FPGA轉(zhuǎn)變?yōu)椴煌奶幚砥鳎腿缫粔K可重復(fù)刷寫的白板一樣。因此FPGA可靈活支持各類深度學(xué)習(xí)的計算任務(wù),性能上根據(jù)百度的一項研究顯示,對于大量的矩陣運算GPU遠(yuǎn)好于FPGA,但是當(dāng)處理小計算量大批次的實際計算時FPGA性能優(yōu)于GPU,另外FPGA有低延遲的特點,非常適合在推斷環(huán)節(jié)支撐海量的用戶實時計算請求(如語音云識別)。
ASIC(專用集成電路,Application Specific Integrated Circuit)則是不可配置的高度定制專用芯片。特點是需要大量的研發(fā)投入,如果不能保證出貨量其單顆成本難以下降,而且芯片的功能一旦流片后則無更改余地,若市場深度學(xué)習(xí)方向一旦改變,ASIC前期投入將無法回收,意味著ASIC具有較大的市場風(fēng)險。但ASIC作為專用芯片性能高于FPGA,如能實現(xiàn)高出貨量,其單顆成本可做到遠(yuǎn)低于FPGA。
FPGA的靈活性,很多使用通用處理器或ASIC難以實現(xiàn)的下層硬件控制操作技術(shù)利用FPGA可以很方便的實現(xiàn),從而為算法的功能實現(xiàn)和優(yōu)化留出了更大空間。同時FPGA一次性成本(光刻掩模制作成本)遠(yuǎn)低于ASIC,在芯片需求還未成規(guī)模、深度學(xué)習(xí)算法暫未穩(wěn)定需要不斷迭代改進(jìn)的情況下,利用具備可重構(gòu)特性的FPGA芯片來實現(xiàn)半定制的人工智能芯片是最佳選擇。在眾多領(lǐng)域都有替代ASIC的趨勢,據(jù)市場機(jī)構(gòu)GRANDVIEW RESEARCH的數(shù)據(jù),F(xiàn)PGA市場將從2015年的63.6億增長到2024年的約110億美元,年均增長率在6%。
盡管FPGA倍受看好,甚至新一代百度大腦也是基于FPGA平臺研發(fā),但其畢竟不是專門為了適用深度學(xué)習(xí)算法而研發(fā),實際仍然存在不少局限:第一,基本單元的計算能力有限。為了實現(xiàn)可重構(gòu)特性,F(xiàn)PGA內(nèi)部有大量極細(xì)粒度的基本單元,但是每個單元的計算能力(主要依靠LUT查找表)都遠(yuǎn)遠(yuǎn)低于CPU和GPU中的ALU模塊。第二,速度和功耗相對專用定制芯片(ASIC)仍然存在不小差距; 第三,F(xiàn)PGA價格較為昂貴,在規(guī)模放量的情況下單塊FPGA的成本要遠(yuǎn)高于專用定制芯片。
近幾年來,定制芯片的性能提升非常明顯。例如英偉達(dá)首款專門為深度學(xué)習(xí)從零開始設(shè)計的芯片Tesla P100數(shù)據(jù)處理速度是其2014年推出GPU系列的12倍。谷歌為機(jī)器學(xué)習(xí)定制的芯片TPU將硬件性能提升至相當(dāng)于當(dāng)前芯片按摩爾定律發(fā)展7年后的水平。正如CPU改變了當(dāng)年龐大的計算機(jī)一樣,人工智能ASIC芯片也將大幅改變?nèi)缃馎I硬件設(shè)備的面貌。如大名鼎鼎的AlphaGo使用了約170個圖形處理器(GPU)和1200 個中央處理器(CPU),這些設(shè)備需要占用一個機(jī)房,還要配備大功率的空調(diào),以及多名專家進(jìn)行系統(tǒng)維護(hù)。而如果全部使用專用芯片,非??赡苤恍枰粋€盒子大小,且功耗也會大幅降低。
下游需求促進(jìn)人工智能芯片專用化。從服務(wù)器,計算機(jī)到無人駕駛汽車、無人機(jī)再到智能家居的各類家電,至少數(shù)十倍于智能手機(jī)體量的設(shè)備需要引入感知交互能力和人工智能計算能力。而出于對實時性的要求以及訓(xùn)練數(shù)據(jù)隱私等考慮,這些能力不可能完全依賴云端,必須要有本地的軟硬件基礎(chǔ)平臺支撐,這將帶來海量的人工智能芯片的需求。
朗銳智科(www.lrist.com)認(rèn)為在芯片需求還未成規(guī)模、深度學(xué)習(xí)算法暫未穩(wěn)定需要不斷迭代改進(jìn)的情況下,利用具備可重構(gòu)特性的FPGA芯片來實現(xiàn)半定制的人工智能芯片是最佳選擇。隨著人工智能算法和應(yīng)用技術(shù)的日益發(fā)展,以及人工智能專用芯片ASIC產(chǎn)業(yè)環(huán)境的逐漸成熟,人工智能ASIC將成為人工智能計算芯片發(fā)展的必然趨勢。
來源:朗銳智科