新聞中心

EEPW首頁 > 智能計算 > 設(shè)計應(yīng)用 > 詳解人工智能芯片 CPU/GPU/FPGA有何差異?

詳解人工智能芯片 CPU/GPU/FPGA有何差異?

作者: 時間:2017-04-01 來源:行業(yè)報告研究院 收藏
編者按:CPU與GPU在各自領(lǐng)域都可以高效地完成任務(wù),但當同樣應(yīng)用于通用基礎(chǔ)計算領(lǐng)域時,設(shè)計架構(gòu)的差異直接導(dǎo)致了兩種芯片性能的差異。

  1.是什么?

本文引用地址:http://butianyuan.cn/article/201704/346122.htm

  場效可編程邏輯閘陣列運用硬件語言描述電路,根據(jù)所需要的邏輯功能對電路進行快速燒錄。一個出廠后的成品的邏輯塊和連接可以按照設(shè)計者的需要而改變,這就好像一個電路試驗板被放在了一個芯片里,所以FPGA可以完成所需要的邏輯功能。

  FPGA和內(nèi)都有大量的計算單元,因此它們的計算能力都很強。在進行神經(jīng)網(wǎng)絡(luò)運算的時候,兩者的速度會比CPU快很多。但是由于架構(gòu)固定,硬件原生支持的指令也就固定了,而FPGA則是可編程的。其可編程性是關(guān)鍵,因為它讓軟件與終端應(yīng)用公司能夠提供與其競爭對手不同的解決方案,并且能夠靈活地針對自己所用的算法修改電路。

  2.FPGA和的性能差異

  同樣是擅長并行計算的FPGA和GPU,誰能夠占領(lǐng)人工智能的高地,并不在于誰的應(yīng)用更廣泛,而是取決于誰的性能更好。在服務(wù)器端,有三個指標可供對比:峰值性能、平均性能與功耗能效比。當然,這三個指標是相互影響的,不過還是可以分開說。

  峰值性能:GPU遠遠高于FPGA

  GPU上面成千上萬個核心同時跑在GHz的頻率上是非常壯觀的,最新的GPU峰值性能甚至可以達到10TFlops 以上。GPU的架構(gòu)經(jīng)過仔細設(shè)計,在電路實現(xiàn)上是基于標準單元庫而在關(guān)鍵路徑上可以用手工定制電路,甚至在必要的情形下可以讓半導(dǎo)體fab依據(jù)設(shè)計需求微調(diào)工藝制程,因此可以讓許多core同時跑在非常高的頻率上。

  相對而言,F(xiàn)PGA首先設(shè)計資源受到很大的限制,例如GPU如果想多加幾個核心只要增加芯片面積就行,但FPGA一旦型號選定了邏輯資源上限就確定了。而且,F(xiàn)PGA里面的邏輯單元是基于SRAM查找表,其性能會比GPU里面的標準邏輯單元差很多。最后,F(xiàn)PGA的布線資源也受限制,因為有些線必須要繞很遠,不像GPU這樣走ASIC flow可以隨意布線,這也會限制性能。

  平均性能:GPU遜于FPGA

  FPGA可以根據(jù)特定的應(yīng)用去編程硬件,例如如果應(yīng)用里面的加法運算非常多就可以把大量的邏輯資源去實現(xiàn)加法器,而GPU一旦設(shè)計完就不能改動了,所以不能根據(jù)應(yīng)用去調(diào)整硬件資源。

  目前機器學(xué)習(xí)大多使用SIMD架構(gòu),即只需一條指令可以平行處理大量數(shù)據(jù),因此用GPU很適合。但是有些應(yīng)用是MISD,即單一數(shù)據(jù)需要用許多條指令平行處理,這種情況下用FPGA做一個MISD的架構(gòu)就會比GPU有優(yōu)勢。

  所以,對于平均性能,看的就是FPGA加速器架構(gòu)上的優(yōu)勢是否能彌補運行速度上的劣勢。如果FPGA上的架構(gòu)優(yōu)化可以帶來相比GPU架構(gòu)兩到三個數(shù)量級的優(yōu)勢,那么FPGA在平均性能上會好于GPU。

  功耗能效比:

  功耗方面,雖然GPU的功耗遠大于FPGA的功耗,但是如果要比較功耗應(yīng)該比較在執(zhí)行效率相同時需要的功耗。如果FPGA的架構(gòu)優(yōu)化能做到很好以致于一塊FPGA的平均性能能夠接近一塊GPU,那么FPGA方案的總功耗遠小于GPU,散熱問題可以大大減輕。反之,如果需要二十塊FPGA才能實現(xiàn)一塊GPU的平均性能,那么FPGA在功耗方面并沒有優(yōu)勢。

  能效比的比較也是類似,能效指的是完成程序執(zhí)行消耗的能量,而能量消耗等于功耗乘以程序執(zhí)行的時間。雖然GPU的功耗遠大于FPGA的功耗,但是如果FPGA執(zhí)行相同程序需要的時間比GPU長幾十倍,那FPGA在能效比上就沒有優(yōu)勢了;反之如果FPGA上實現(xiàn)的硬件架構(gòu)優(yōu)化得很適合特定的機器學(xué)習(xí)應(yīng)用,執(zhí)行算法所需的時間僅僅是GPU的幾倍或甚至于接近GPU,那么FPGA的能效比就會比GPU強。

  3.FPGA市場前景

  隨著科技的進展,制造業(yè)走向更高度的自動化與智能化,對工業(yè)控制技術(shù)等領(lǐng)域不斷產(chǎn)生新的需求,在未來的工業(yè)制造領(lǐng)域,F(xiàn)PGA將有更大的發(fā)展空間。目前來看,有兩個領(lǐng)域的應(yīng)用前景十分巨大:

  工業(yè)互聯(lián)網(wǎng)領(lǐng)域

  作為未來制造業(yè)發(fā)展的方向,工業(yè)大數(shù)據(jù)、云計算平臺、MES系統(tǒng)等都是支持工業(yè)智能化的重要平臺,它們需要完成大數(shù)據(jù)量的復(fù)雜處理,F(xiàn)PGA在其中可以發(fā)揮重要作用。

  工業(yè)機器人設(shè)備領(lǐng)域

  在多軸向運作的精密控制、實時同步的連接以及設(shè)備多功能整合等方面,兼具彈性和整合性的FPGA,更能展現(xiàn)設(shè)計優(yōu)勢。如汽車ADAS需要對實時高清圖像進行及時的分析識別與處理;在人工智能方面,深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)也需要進行大量并行運算。

  4.FPGA現(xiàn)有市場

  FPGA市場前景誘人,但是門檻之高在芯片行業(yè)里無出其右。全球有60多家公司先后斥資數(shù)十億美元,前赴后繼地嘗試登頂FPGA高地,其中不乏英特爾、IBM、德州儀器、摩托羅拉、飛利浦、東芝、三星這樣的行業(yè)巨鱷,但是最終登頂成功的只有位于美國硅谷的兩家公司:Xilinx與Altera。這兩家公司共占有近90%的市場份額,專利達到6000余項之多,如此之多的技術(shù)專利構(gòu)成的技術(shù)壁壘當然高不可攀。

  2015年6月,英特爾用史無前例的167億美元巨款收購了Altera,當時業(yè)內(nèi)對于英特爾此舉的解讀主要集中在服務(wù)器市場、物聯(lián)網(wǎng)市場的布局上,英特爾自己對收購的解釋也沒有明確提到機器學(xué)習(xí)。但現(xiàn)在看來,或許這筆收購在人工智能領(lǐng)域同樣具有相當大的潛力。

  5.FPGA行業(yè)的開拓者:

  英特爾能不能通過FPGA切入AI硬件市場?要講清楚這個問題,我們必須要把視角從人工智能身上拉遠,看看英特爾的整體戰(zhàn)略布局。最近幾年,英特爾的核心盈利業(yè)務(wù)CPU同時遭到了三個因素的狙擊:PC市場增長放緩、進軍移動市場的嘗試失敗以及摩爾定律逐漸逼近極限。單純的賣CPU固然也能賺到錢,但只有研發(fā)更高端的芯片,形成自己領(lǐng)導(dǎo)者的形象,才能賺更多的錢,支撐公司的發(fā)展。

  上述三個因素的同時出現(xiàn),已經(jīng)讓英特爾發(fā)現(xiàn),如果自己仍然只是安心的守著自己的CPU業(yè)務(wù),很快就會面臨巨大的危機,事實上在過去的一年里,利潤下降、裁員的新聞也一直圍繞在英特爾的身邊,揮之不去。

  因而英特爾十分渴望不要錯過下一個深度學(xué)習(xí)的潮流,不過它缺乏自己最先進的人工智能研究,所以在過去的兩年中瘋狂地收購。2015年,英特爾用史無前例的167億美元拍下了FPGA制造商Altera,2016年又相繼兼并了人工智能芯片初創(chuàng)公司Nervana與Movidius。目前的英特爾正在試圖將他們整合在一起。

  6.Intel的產(chǎn)品布局

  英特爾斥巨資收購Altera不是來為FPGA技術(shù)發(fā)展做貢獻的,相反,它要讓FPGA技術(shù)為英特爾的發(fā)展做貢獻。表現(xiàn)在技術(shù)路線圖上,那就是從現(xiàn)在分立的CPU芯片+分立的FPGA加速芯片,過渡到同一封裝內(nèi)的CPU晶片+FPGA晶片,到最終的集成CPU+FPGA芯片。預(yù)計這幾種產(chǎn)品形式將會長期共存,因為分立器件雖然性能稍差,但靈活性更高。

  如果簡單的將英特爾對于人工智能的產(chǎn)品布局,可以分以下幾層:

  ·Xeon Phi+ Nervana:用于云端最頂層的高性能計算。

  ·Xeon+FPGA:用于云端中間層/前端設(shè)備的低功耗性能計算。

  英特爾下一代的FPGA和SoC FPGA將支持Intel架構(gòu)集成,大致如下:代號為Harrisville的產(chǎn)品采用Intel 22nm工藝技術(shù),用于工業(yè)IoT、汽車和小區(qū)射頻等領(lǐng)域;代號為Falcon Messa的中端產(chǎn)品采用Intel 10nm工藝技術(shù),用于4G/5G無線通信、UHD/8K廣播視頻、工業(yè)IoT和汽車等領(lǐng)域;代號為Falcon Mesa的高端產(chǎn)品采用Intel 10nm工藝技術(shù),用于云和加速、太比特系統(tǒng)和高速信號處理等領(lǐng)域。

  ·Core(GT):用于消費級前端設(shè)備的性能計算、圖形加速。

  ·Euclid:提供給開發(fā)者/創(chuàng)客的開發(fā)板,集成Atom低功耗處理器、RealSense攝像頭模塊、接口,可用做無人機、小型機器人的核心開發(fā)部件。

  ·Curie:提供給開發(fā)者/創(chuàng)客的模塊,其內(nèi)置Quark SE系統(tǒng)芯片、藍牙低功耗無線電、以及加速計、陀螺儀等傳感器,可用做低功耗可穿戴設(shè)備的核心部件。

  從產(chǎn)品線來看,包含了CPU與FPGA的異構(gòu)計算處理器將是Intel盈利的重點。預(yù)計到2020年Intel將有1/3的云數(shù)據(jù)中心節(jié)點采用FPGA技術(shù),CPU+FPGA擁有更高的單位功耗性能、更低時延和更快加速性能,在大數(shù)據(jù)和云計算領(lǐng)域有望沖擊CPU+GPU的主導(dǎo)地位,而Intel的至強處理器Xeon +FPGA也將在2017年下半年量產(chǎn)。

  7.Intel的痛點:生態(tài)不完善

  FPGA對GPU的潛力在于其計算速度與GPU不相上下,卻在成本和功耗上對GPU有著顯著優(yōu)勢。當然,劣勢也有,但是FPGA的潛力是非常明顯的。作為一個想要推向市場的商品來說,F(xiàn)PGA最需要克服,也是最容易克服的問題是普及程度。

  大部分PC都配有或高端或低端的獨立GPU,對于個人進行的中小規(guī)模神經(jīng)網(wǎng)絡(luò)開發(fā)和訓(xùn)練來說,其實它們的性能已經(jīng)基本足夠。而FPGA卻不是在電腦里能找得到的東西,而多見于各種冰箱、電視等電器設(shè)備及實驗室中,因此想要搞到一塊能用來開發(fā)深度學(xué)習(xí)的FPGA其實還挺麻煩的。不僅如此,F(xiàn)PGA的不普及還體現(xiàn)在以下三個方面:

  OpenCL編程平臺應(yīng)用不廣泛

  即使GPU有著種種不足,它也不是能夠輕易被取代的。從深度學(xué)習(xí)應(yīng)用的開發(fā)工具角度,具備CUDA支持的GPU為用戶學(xué)習(xí)Caffe、Theano等研究工具提供了很好的入門平臺。自2006年推出CUDA以來,已有超過5億的筆記本電腦、工作站、計算集群和超級計算機安裝了支持CUDA的GPU。

  如果FPGA想要攻占深度學(xué)習(xí)的市場,那么產(chǎn)業(yè)鏈下游的編程平臺必不可少。目前較為流行的異構(gòu)硬件編程的替代性工具是OpenCL。不同于CUDA單一供應(yīng)商的做法,OpenCL對開發(fā)者開源、免費,這是一大重要競爭力。但目前來看,其獲得的支持相較CUDA還略遜一籌。

  實現(xiàn)硬件編程困難

  除了軟件編程的不普及之外,吸引偏好上層編程語言的研究人員和應(yīng)用科學(xué)家來開發(fā)FPGA尤為艱難。雖然能流利使用一種軟件語言常常意味著可以輕松地學(xué)習(xí)另一種軟件語言,但對于硬件語言翻譯技能來說卻非如此。針對FPGA最常用的語言是Verilog和VHDL,兩者均為硬件描述語言(HDL)。這些語言和傳統(tǒng)的軟件語言之間的主要區(qū)別是,HDL只是單純描述硬件,而例如C語言等軟件語言則描述順序指令,并無需了解硬件層面的執(zhí)行細節(jié)。

  有效地描述硬件需要對數(shù)字化設(shè)計和電路的專業(yè)知識,盡管一些下層的實現(xiàn)決定可以留給自動合成工具去實現(xiàn),但往往無法達到高效的設(shè)計。因此,研究人員和應(yīng)用科學(xué)家傾向于選擇軟件設(shè)計,因其已經(jīng)非常成熟,擁有大量抽象和便利的分類來提高程序員的效率。

  部署環(huán)節(jié)需要定制復(fù)雜套件

  FPGA需要有一個完善的復(fù)雜生態(tài)系統(tǒng)才能保證其使用,不只體現(xiàn)在軟件與硬件編程平臺上,更體現(xiàn)在部署環(huán)節(jié)中。FPGA在安裝過程中需要針對不同的IP核定制一系列復(fù)雜的工具套件,相比之下,GPU通過PCI-e接口可以直接部署在服務(wù)器中,方便而快速。因此,嵌入式FPGA概念雖好,想要發(fā)展起來仍將面臨十分嚴峻的挑戰(zhàn)。

  8.Intel的優(yōu)勢

  目前在深度學(xué)習(xí)市場FPGA尚未成氣候,谷歌這樣的超級大廠又喜歡自己研發(fā)專用芯片,因此可以說對于深度學(xué)習(xí)芯片來說,個人開發(fā)者及中小型企業(yè)內(nèi)還有相當大的市場。這個市場目前幾乎只有英偉達一家獨大,英特爾想要強勢進入未必沒有機會。而相比于英偉達來說,英特爾有兩個明顯的優(yōu)勢:

  更熟悉CPU

  盡管目前的人工智能市場幾乎只有英偉達一家獨大,但英偉達的芯片也不是能夠自己完成深度學(xué)習(xí)訓(xùn)練的?;蛘哒f,英偉達的GPU芯片還不足以取代那些英特爾的CPU,大多數(shù)環(huán)境下它們暫時只能加速這些處理器。所以,GPGPU暫時只是概念上的,GPU還不足以在大多數(shù)復(fù)雜運算環(huán)境下代替CPU,而隨著人工智能技術(shù)的進步,對硬件的邏輯運算能力只會更高不會降低,所以搭載強大CPU核心的多核異構(gòu)處理器才是更長期的發(fā)展方向。而論對CPU的熟悉,沒有一家芯片廠商能過勝過英特爾,英特爾是最有可能讓搭載了FPGA與CPU的異構(gòu)處理器真正實現(xiàn)多核心相輔相成的芯片公司。

  曾涉足云計算

  算法的訓(xùn)練應(yīng)該是貫穿整個應(yīng)用過程的,這樣可以隨時為消費者提供最好體驗的服務(wù)。但是如果要將所有算法都集中于本地訓(xùn)練,不僅會面臨計算瓶頸的問題,也容易面臨從單個用戶處收集到的數(shù)據(jù)量太少的尷尬。我們暫時不考慮很久以后可能出現(xiàn)的基于小樣本的無監(jiān)督學(xué)習(xí)的AI,畢竟那其實已經(jīng)跟人差不多了,在目前AI的發(fā)展狀況下,將所有數(shù)據(jù)集中于云端進行計算顯然是更理性且有效的做法。這就對通信提出了極高的要求,而英特爾恰巧在這個領(lǐng)域有著相當多的積累。雖然英特爾的通信部門連年虧損,但在現(xiàn)在的形勢下,它卻意外地有了新的價值與潛力。


上一頁 1 2 3 4 下一頁

關(guān)鍵詞: GPU FPGA

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉