chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

CPU和異構(gòu)計(jì)算芯片GPU、FPGA、ASIC的詳細(xì)分析

dKBf_eetop_1 ? 來(lái)源:未知 ? 作者:佚名 ? 2017-10-26 09:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、異構(gòu)計(jì)算:WHY

明明CPU用的好好的,為什么我們要考慮異構(gòu)計(jì)算芯片呢?

隨著互聯(lián)網(wǎng)用戶(hù)的快速增長(zhǎng),數(shù)據(jù)體量的急劇膨脹,數(shù)據(jù)中心對(duì)計(jì)算的需求也在迅猛上漲。諸如深度學(xué)習(xí)在線(xiàn)預(yù)測(cè)、直播中的視頻轉(zhuǎn)碼、圖片壓縮解壓縮以及HTTPS加密等各類(lèi)應(yīng)用對(duì)計(jì)算的需求已遠(yuǎn)遠(yuǎn)超出了傳統(tǒng)CPU處理器的能力所及。

歷史上,受益于半導(dǎo)體技術(shù)的持續(xù)演進(jìn),計(jì)算機(jī)體系結(jié)構(gòu)的吞吐量和系統(tǒng)性能不斷提高,處理器的性能每18個(gè)月就能翻倍(眾所周知的“摩爾定律”),使得處理器的性能可以滿(mǎn)足應(yīng)用軟件的需求。但是,近幾年半導(dǎo)體技術(shù)改進(jìn)達(dá)到了物理極限,電路越來(lái)越復(fù)雜,每一個(gè)設(shè)計(jì)的開(kāi)發(fā)成本高達(dá)數(shù)百萬(wàn)美元,數(shù)十億美元才能形成新產(chǎn)品投產(chǎn)能力。2016年3月24日,英特爾宣布正式停用“Tick-Tock”處理器研發(fā)模式,未來(lái)研發(fā)周期將從兩年周期向三年期轉(zhuǎn)變。至此,摩爾定律對(duì)英特爾幾近失效。

一方面處理器性能再無(wú)法按照摩爾定律進(jìn)行增長(zhǎng),另一方面數(shù)據(jù)增長(zhǎng)對(duì)計(jì)算性能要求超過(guò)了按“摩爾定律”增長(zhǎng)的速度。處理器本身無(wú)法滿(mǎn)足高性能計(jì)算(HPC:High PerformanceCompute)應(yīng)用軟件的性能需求,導(dǎo)致需求和性能之間出現(xiàn)了缺口(參見(jiàn)圖1)。

一種解決方法是通過(guò)硬件加速,采用專(zhuān)用協(xié)處理器的異構(gòu)計(jì)算方式來(lái)提升處理性能。

圖1 計(jì)算需求和計(jì)算能力的缺口發(fā)展形式

二、異構(gòu)計(jì)算:STANDARDS

通常我們?cè)跒闃I(yè)務(wù)提供解決方案的時(shí)候,部署平臺(tái)會(huì)有四種選擇CPU、GPU、FPGA、ASIC。那有什么標(biāo)準(zhǔn)來(lái)評(píng)判計(jì)算平臺(tái)的優(yōu)劣呢?

圖:我是法官,標(biāo)準(zhǔn)我說(shuō)了算

當(dāng)今理想的協(xié)處理器應(yīng)該是基于硬件的設(shè)計(jì),具備三種基本能力。第一是設(shè)計(jì)能夠提供專(zhuān)門(mén)的硬件加速實(shí)現(xiàn)各種應(yīng)用中需要的關(guān)鍵處理功能。其次是協(xié)處理器設(shè)計(jì)在性能上非常靈活,使用流水線(xiàn)和并行結(jié)構(gòu),跟上算法更新以及性能的需求變化。最后,協(xié)處理器能夠?yàn)橹魈幚砥骱拖到y(tǒng)存儲(chǔ)器提供寬帶、低延遲接口。

除了硬件要求以外,理想的協(xié)處理器還應(yīng)該滿(mǎn)足HPC市場(chǎng)的“4P”要求:性能(performance)、效能(productivity)、功耗(power)和價(jià)格(price)。

HPC市場(chǎng)對(duì)性能的最低要求是全面加速實(shí)現(xiàn)算法,而不僅僅是某一步驟,并能夠加速實(shí)現(xiàn)整個(gè)應(yīng)用軟件。

效能需求來(lái)自最終用戶(hù)。在現(xiàn)有的計(jì)算機(jī)系統(tǒng)中,協(xié)處理器必須安裝起來(lái)很方便,提供簡(jiǎn)單的方法來(lái)配置系統(tǒng),加速實(shí)現(xiàn)現(xiàn)有的應(yīng)用軟件。

HPC市場(chǎng)的功耗需求來(lái)自計(jì)算系統(tǒng)安裝和使用上的功耗限制。對(duì)于大部分用戶(hù),能夠提供給計(jì)算機(jī)的空間有限。計(jì)算系統(tǒng)的功耗越小,那么可以采取更少的散熱措施來(lái)保持計(jì)算機(jī)不會(huì)過(guò)熱。因此,低功耗協(xié)處理器不但能夠?yàn)橛?jì)算系統(tǒng)提供更低的運(yùn)轉(zhuǎn)成本,而且還提高了計(jì)算系統(tǒng)的空間利用率。

價(jià)格因素在HPC市場(chǎng)上顯得越來(lái)越重要。十幾年前,某些應(yīng)用軟件對(duì)性能的需求超出了單個(gè)處理器能力范圍,這促使人們采用專(zhuān)用體系結(jié)構(gòu),例如密集并行處理(MPP)和對(duì)稱(chēng)多處理(SMP)等。然而,這類(lèi)系統(tǒng)要求使用定制處理器單元和專(zhuān)用數(shù)據(jù)通路,開(kāi)發(fā)和編程都非常昂貴。

現(xiàn)在的HPC市場(chǎng)拋棄了如此昂貴的方法,而是采用性?xún)r(jià)比更高的集群計(jì)算方法。集群計(jì)算采用商用標(biāo)準(zhǔn)體系結(jié)構(gòu),例如IntelAMD;采用工業(yè)標(biāo)準(zhǔn)互聯(lián),例如萬(wàn)兆以太網(wǎng)和InfiniBand;采用標(biāo)準(zhǔn)程序語(yǔ)言,例如運(yùn)行在低成本Linux操作系統(tǒng)上的C語(yǔ)言等。當(dāng)今的協(xié) 處理器設(shè)計(jì)必須能夠平滑集成到商用集群計(jì)算環(huán)境中,其成本和在集群中加入另一個(gè)節(jié)點(diǎn) 大致相當(dāng)。

了解了基本的評(píng)判標(biāo)準(zhǔn)之后,我們以當(dāng)今最火的深度學(xué)習(xí)為例,從芯片架構(gòu)、計(jì)算性能、功耗、開(kāi)發(fā)難度幾個(gè)方面來(lái)對(duì)幾種不同的芯片進(jìn)行分析對(duì)比。

三、異構(gòu)計(jì)算:WHICH

1、芯片特性

對(duì)常用的處理器芯片進(jìn)行分類(lèi),有一個(gè)明顯的特點(diǎn):CPU&GPU需要軟件支持,而FPGA&ASIC則是軟硬件一體的架構(gòu),軟件就是硬件。這個(gè)特點(diǎn)是處理器芯片中最重要的一個(gè)特征。

圖2處理器芯片對(duì)比

圖2可以從兩個(gè)角度來(lái)說(shuō)明:從ASIC->CPU的方向,沿著這個(gè)方向芯片的易用性越來(lái)越強(qiáng),CPU&GPU的編程需要編譯系統(tǒng)的支持,編譯系統(tǒng)的作用是把高級(jí)軟件語(yǔ)言翻譯成機(jī)器可以識(shí)別的指令(也叫機(jī)器語(yǔ)言)。高級(jí)語(yǔ)言帶來(lái)了極大的便利性和易用性,因此用CPU&GPU實(shí)現(xiàn)同等功能的軟件開(kāi)發(fā)周期要遠(yuǎn)低于FPGA&ASIC芯片。沿著CPU->ASIC的方向,芯片中晶體管的效率越來(lái)越高。因?yàn)镕PGA&ASIC等芯片實(shí)現(xiàn)的算法直接用晶體管門(mén)電路實(shí)現(xiàn),比起指令系統(tǒng),算法直接建筑在物理結(jié)構(gòu)之上,沒(méi)有中間層次,因此晶體管的效率最高。

本質(zhì)上軟件的操作對(duì)象是指令,而CPU&GPU則扮演高速執(zhí)行指令的角色。指令的存在將程序執(zhí)行變成了軟件和硬件兩部分,指令的存在也決定了各種處理器芯片的一些完全不同的特點(diǎn)以及各自的優(yōu)劣勢(shì)。

FPGA&ASIC等芯片的功能是固定的,它們實(shí)現(xiàn)的算法直接用門(mén)電路實(shí)現(xiàn),因此FPGA&ASIC編程就是用門(mén)電路實(shí)現(xiàn)算法的過(guò)程,軟件完成意味著門(mén)電路的組織形式已經(jīng)確定了,從這個(gè)意義上,F(xiàn)PGA&ASIC的軟件就是硬件,軟件就決定了硬件的組織形式。軟硬件一體化的特點(diǎn)決定了FPGA&ASIC設(shè)計(jì)中極端重要的資源利用率特征。利用率指用門(mén)電路實(shí)現(xiàn)算法的過(guò)程中,算法對(duì)處理器芯片所擁有的門(mén)電路資源的占用情況。如果算法比較龐大,可能出現(xiàn)門(mén)電路資源不夠用或者雖然電路資源夠用,但實(shí)際布線(xiàn)困難無(wú)法進(jìn)行的情況。

存在指令系統(tǒng)的處理器芯片CPU&GPU不存在利用率的情況。它們執(zhí)行指令的過(guò)程是不斷從存儲(chǔ)器讀入指令,然后由執(zhí)行器執(zhí)行。由于存儲(chǔ)器相對(duì)于每條指令所占用的空間幾乎是無(wú)限的,即使算法再龐大也不存在存儲(chǔ)器空間不夠,無(wú)法把算法讀入的情況。而且計(jì)算機(jī)系統(tǒng)還可以外掛硬盤(pán)等擴(kuò)展存儲(chǔ),通過(guò)把暫時(shí)不執(zhí)行的算法切換到硬盤(pán)保存更增加了指令存儲(chǔ)的空間。

2、芯片計(jì)算性能

深度學(xué)習(xí)的學(xué)名又叫深層神經(jīng)網(wǎng)絡(luò)(DeepNeural Networks),是從人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks)模型發(fā)展而來(lái)。我們以深度學(xué)習(xí)作為切入點(diǎn)來(lái)分析各個(gè)芯片的性能。圖3是神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu),模型中每一層的大量計(jì)算是上一層的輸出結(jié)果和其對(duì)應(yīng)的權(quán)重值這兩個(gè)矩陣的乘法運(yùn)算。

圖3神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu)

橫向?qū)Ρ菴PU,GPU,F(xiàn)PGA,ASIC計(jì)算能力,實(shí)際對(duì)比的是:

1、硬件芯片的乘加計(jì)算能力。

2、為什么有這樣乘加計(jì)算能力?

3、是否可以充分發(fā)揮硬件芯片的乘加計(jì)算能力?

帶著這三個(gè)問(wèn)題,我們進(jìn)行硬件芯片的計(jì)算能力對(duì)比。

CPU計(jì)算能力分析

這里CPU計(jì)算能力用Intel的Haswell架構(gòu)進(jìn)行分析,Haswell架構(gòu)上計(jì)算單元有2個(gè)FMA(fused multiply-add),每個(gè)FMA可以對(duì)256bit數(shù)據(jù)在一個(gè)時(shí)鐘周期中做一次乘運(yùn)算和一次加運(yùn)算,所以對(duì)應(yīng)32bit單精度浮點(diǎn)計(jì)算能力為:

(256bit/32bit)* 2(FMA) * 2(乘和加) = 32 SP FLOPs/cycle,即每個(gè)時(shí)鐘周期可以做32個(gè)單精度浮點(diǎn)計(jì)算。

CPU峰值浮點(diǎn)計(jì)算性能 = CPU核數(shù) * CPU頻率 * 每周期執(zhí)行的浮點(diǎn)操作數(shù)。已Intel的CPU型號(hào)E5-2620V3來(lái)計(jì)算峰值計(jì)算能力為 =6(CPU核數(shù)) * 2.4GHz(CPU頻率) * 32 SP FLOPs/cycle = 460.8 GFLOPs/s 即每秒460G峰值浮點(diǎn)計(jì)算能力。

CPU芯片結(jié)構(gòu)是否可以充分發(fā)揮浮點(diǎn)計(jì)算能力?CPU的指令執(zhí)行過(guò)程是:取指令 -> 指令譯碼 -> 指令執(zhí)行,只有在指令執(zhí)行的時(shí)候,計(jì)算單元才發(fā)揮作用,這樣取指令和指令譯碼的兩段時(shí)間,計(jì)算單元是不在工作的,如圖4所示。

圖4 CPU指令執(zhí)行流程

CPU為了提高指令執(zhí)行的效率,在當(dāng)前指令執(zhí)行過(guò)程的時(shí)候,預(yù)先讀取后面幾條指令,使得指令流水處理,提高指令執(zhí)行效率,如圖5所示。指令預(yù)先讀取并流水執(zhí)行的前提是指令之間不具有相關(guān)性,不能一個(gè)指令的如何執(zhí)行需要等到前面一個(gè)指令執(zhí)行完的結(jié)果才可以獲知。

圖5 CPU指令流水執(zhí)行

CPU作為通用處理器,兼顧計(jì)算和控制,70%晶體管用來(lái)構(gòu)建Cache 還有一部分控制單元,用來(lái)處理復(fù)雜邏輯和提高指令的執(zhí)行效率,如圖6所示,所以導(dǎo)致計(jì)算通用性強(qiáng),可以處理計(jì)算復(fù)雜度高,但計(jì)算性能一般。

圖6 CPU結(jié)構(gòu)

通過(guò)CPU計(jì)算性能分析,直接提高計(jì)算性能方向?yàn)椋涸黾覥PU核數(shù)、提高CPU頻率、修改CPU架構(gòu)增加計(jì)算單元FMA(fusedmultiply-add)個(gè)數(shù)。這3個(gè)方向中,直接增加CPU核數(shù)對(duì)于計(jì)算能力提升最高,但是帶來(lái)芯片功耗和價(jià)格的增加,因?yàn)槊總€(gè)物理核中只有30%的晶體管是計(jì)算單元。提高CPU頻率,提升的空間有限,而且CPU頻率太高會(huì)導(dǎo)致芯片出現(xiàn)功耗過(guò)大和過(guò)熱的問(wèn)題,因此英特爾等芯片制造商目前走多核化的路線(xiàn),即限制單個(gè)微處理器的主頻,通過(guò)集成多個(gè)處理器內(nèi)核來(lái)提高處理性能。修改CPU架構(gòu)增加計(jì)算單元FMA個(gè)數(shù),目前英特爾按照“Tick-Tock”二年一個(gè)周期進(jìn)行CPU架構(gòu)調(diào)整,從2016年開(kāi)始放緩至三年,更新迭代周期較長(zhǎng)。

GPU計(jì)算能力分析

GPU主要擅長(zhǎng)做類(lèi)似圖像處理的并行計(jì)算,所謂的“粗粒度并行(coarse-grainparallelism)”。圖形處理計(jì)算的特征表現(xiàn)為高密度的計(jì)算而計(jì)算需要的數(shù)據(jù)之間較少存在相關(guān)性,GPU 提供大量的計(jì)算單元(多達(dá)幾千個(gè)計(jì)算單元)和大量的高速內(nèi)存,可以同時(shí)對(duì)很多像素進(jìn)行并行處理。

圖7是GPU的設(shè)計(jì)結(jié)構(gòu)。GPU的設(shè)計(jì)出發(fā)點(diǎn)在于GPU更適用于計(jì)算強(qiáng)度高、多并行的計(jì)算。因此,GPU把晶體管更多用于計(jì)算單元,而不像CPU用于數(shù)據(jù)Cache和流程控制器。這樣的設(shè)計(jì)是因?yàn)椴⑿杏?jì)算時(shí)每個(gè)數(shù)據(jù)單元執(zhí)行相同程序,不需要繁瑣的流程控制而更需要高計(jì)算能力,因此也不需要大的cache容量。

圖7 GPU結(jié)構(gòu)

GPU中一個(gè)邏輯控制單元對(duì)應(yīng)多個(gè)計(jì)算單元,同時(shí)要想計(jì)算單元充分并行起來(lái),邏輯控制必然不會(huì)太復(fù)雜,太復(fù)雜的邏輯控制無(wú)法發(fā)揮計(jì)算單元的并行度,例如過(guò)多的if…else if…else if… 分支計(jì)算就無(wú)法提高計(jì)算單元的并行度,所以在GPU中邏輯控制單元也就不需要能夠快速處理復(fù)雜控制。

這里GPU計(jì)算能力用Nvidia的Tesla K40進(jìn)行分析,K40包含2880個(gè)流處理器(Stream Processor),流處理器就是GPU的計(jì)算單元。每個(gè)流處理器包含一個(gè)32bit單精度浮點(diǎn)乘和加單元,即每個(gè)時(shí)鐘周期可以做2個(gè)單精度浮點(diǎn)計(jì)算。GPU峰值浮點(diǎn)計(jì)算性能 = 流處理器個(gè)數(shù) * GPU頻率 * 每周期執(zhí)行的浮點(diǎn)操作數(shù)。以K40為例,K40峰值浮點(diǎn)計(jì)算性能= 2880(流處理器) * 745MHz * 2(乘和加) = 4.29TFLOPs/s即每秒4.29T峰值浮點(diǎn)計(jì)算能力。

GPU芯片結(jié)構(gòu)是否可以充分發(fā)揮浮點(diǎn)計(jì)算能力?GPU同CPU一樣也是指令執(zhí)行過(guò)程:取指令 -> 指令譯碼 -> 指令執(zhí)行,只有在指令執(zhí)行的時(shí)候,計(jì)算單元才發(fā)揮作用。GPU的邏輯控制單元相比CPU簡(jiǎn)單,所以要想做到指令流水處理,提高指令執(zhí)行效率,必然要求處理的算法本身復(fù)雜度低,處理的數(shù)據(jù)之間相互獨(dú)立,所以算法本身的串行處理會(huì)導(dǎo)致GPU浮點(diǎn)計(jì)算能力的顯著降低。

FPGA計(jì)算能力分析

FPGA作為一種高性能、低功耗的可編程芯片,可以根據(jù)客戶(hù)定制來(lái)做針對(duì)性的算法設(shè)計(jì)。所以在處理海量數(shù)據(jù)的時(shí)候,F(xiàn)PGA 相比于CPU 和GPU,優(yōu)勢(shì)在于:FPGA計(jì)算效率更高,F(xiàn)PGA更接近IO。

FPGA不采用指令和軟件,是軟硬件合一的器件。對(duì)FPGA進(jìn)行編程要使用硬件描述語(yǔ)言,硬件描述語(yǔ)言描述的邏輯可以直接被編譯為晶體管電路的組合。所以FPGA實(shí)際上直接用晶體管電路實(shí)現(xiàn)用戶(hù)的算法,沒(méi)有通過(guò)指令系統(tǒng)的翻譯。

FPGA的英文縮寫(xiě)名翻譯過(guò)來(lái),全稱(chēng)是現(xiàn)場(chǎng)可編程邏輯門(mén)陣列,這個(gè)名稱(chēng)已經(jīng)揭示了FPGA的功能,它就是一堆邏輯門(mén)電路的組合,可以編程,還可以重復(fù)編程。圖8展示了可編程FPGA的內(nèi)部原理圖。

圖8 FPGA內(nèi)部結(jié)構(gòu)圖

這里FPGA計(jì)算能力用Xilinx的V7-690T進(jìn)行分析,V7-690T包含3600個(gè)DSP(Digital SignalProcessing),DSP就是FPGA的計(jì)算單元。每個(gè)DSP可以在每個(gè)時(shí)鐘周期可以做2個(gè)單精度浮點(diǎn)計(jì)算(乘和加)。FPGA峰值浮點(diǎn)計(jì)算性能 = DSP個(gè)數(shù) * FPGA頻率 * 每周期執(zhí)行的浮點(diǎn)操作數(shù)。V7-690T運(yùn)行頻率已250MHz來(lái)計(jì)算,V7-690T峰值浮點(diǎn)計(jì)算性能 =3600(DSP個(gè)數(shù)) * 250MHz * 2(乘和加)=1.8T FLOPs/s即每秒1.8T峰值浮點(diǎn)計(jì)算能力。

FPGA芯片結(jié)構(gòu)是否可以充分發(fā)揮浮點(diǎn)計(jì)算能力?FPGA由于算法是定制的,所以沒(méi)有CPU和GPU的取指令和指令譯碼過(guò)程,數(shù)據(jù)流直接根據(jù)定制的算法進(jìn)行固定操作,計(jì)算單元在每個(gè)時(shí)鐘周期上都可以執(zhí)行,所以可以充分發(fā)揮浮點(diǎn)計(jì)算能力,計(jì)算效率高于CPU和GPU。

ASIC計(jì)算能力分析

ASIC是一種專(zhuān)用芯片,與傳統(tǒng)的通用芯片有一定的差異。是為了某種特定的需求而專(zhuān)門(mén)定制的芯片。ASIC芯片的計(jì)算能力和計(jì)算效率都可以根據(jù)算法需要進(jìn)行定制,所以ASIC與通用芯片相比,具有以下幾個(gè)方面的優(yōu)越性:體積小、功耗低、計(jì)算性能高、計(jì)算效率高、芯片出貨量越大成本越低。但是缺點(diǎn)也很明顯:算法是固定的,一旦算法變化就可能無(wú)法使用。目前人工智能屬于大爆發(fā)時(shí)期,大量的算法不斷涌出,遠(yuǎn)沒(méi)有到算法平穩(wěn)期,ASIC專(zhuān)用芯片如何做到適應(yīng)各種算法是個(gè)最大的問(wèn)題,如果以目前CPU和GPU架構(gòu)來(lái)適應(yīng)各種算法,那ASIC專(zhuān)用芯片就變成了同CPU、GPU一樣的通用芯片,在性能和功耗上就沒(méi)有優(yōu)勢(shì)了。

我們來(lái)看看FPGA 和 ASIC 的區(qū)別。FPGA基本原理是在芯片內(nèi)集成大量的數(shù)字電路基本門(mén)電路以及存儲(chǔ)器,而用戶(hù)可以通過(guò)燒入 FPGA 配置文件來(lái)來(lái)定義這些門(mén)電路以及存儲(chǔ)器之間的連線(xiàn)。這種燒入不是一次性的,即用戶(hù)今天可以把 FPGA 配置成一個(gè)微控制器 MCU,明天可以編輯配置文件把同一個(gè) FPGA 配置成一個(gè)音頻編解碼器。ASIC 則是專(zhuān)用集成電路,一旦設(shè)計(jì)制造完成后電路就固定了,無(wú)法再改變。

比較 FPGA 和 ASIC 就像比較樂(lè)高積木和模型。舉例來(lái)說(shuō),如果你發(fā)現(xiàn)最近星球大戰(zhàn)里面 Yoda 大師很火,想要做一個(gè) Yoda 大師的玩具賣(mài),你要怎么辦呢?

有兩種辦法,一種是用樂(lè)高積木搭,還有一種是找工廠(chǎng)開(kāi)模定制。用樂(lè)高積木搭的話(huà),只要設(shè)計(jì)完玩具外形后去買(mǎi)一套樂(lè)高積木即可。而找工廠(chǎng)開(kāi)模的話(huà)在設(shè)計(jì)完玩具外形外你還需要做很多事情,比如玩具的材質(zhì)是否會(huì)散發(fā)氣味,玩具在高溫下是否會(huì)融化等等,所以用樂(lè)高積木來(lái)做玩具需要的前期工作比起找工廠(chǎng)開(kāi)模制作來(lái)說(shuō)要少得多,從設(shè)計(jì)完成到能夠上市所需要的時(shí)間用樂(lè)高也要快很多。

FPGA 和 ASIC 也是一樣,使用 FPGA 只要寫(xiě)完 Verilog 代碼就可以用 FPGA 廠(chǎng)商提供的工具實(shí)現(xiàn)硬件加速器了,而要設(shè)計(jì) ASIC 則還需要做很多驗(yàn)證和物理設(shè)計(jì) (ESD,Package 等等),需要更多的時(shí)間。如果要針對(duì)特殊場(chǎng)合(如軍事和工業(yè)等對(duì)于可靠性要求很高的應(yīng)用),ASIC 則需要更多時(shí)間進(jìn)行特別設(shè)計(jì)以滿(mǎn)足需求,但是用 FPGA 的話(huà)可以直接買(mǎi)軍工級(jí)的高穩(wěn)定性 FPGA 完全不影響開(kāi)發(fā)時(shí)間。但是,雖然設(shè)計(jì)時(shí)間比較短,但是樂(lè)高積木做出來(lái)的玩具比起工廠(chǎng)定制的玩具要粗糙(性能差)一些(下圖),畢竟工廠(chǎng)開(kāi)模是量身定制。

另外,如果出貨量大的話(huà),工廠(chǎng)大規(guī)模生產(chǎn)玩具的成本會(huì)比用樂(lè)高積木做便宜許多。FPGA 和 ASIC 也是如此,在同一時(shí)間點(diǎn)上用最好的工藝實(shí)現(xiàn)的 ASIC 的加速器的速度會(huì)比用同樣工藝 FPGA 做的加速器速度快 5-10 倍,而且一旦量產(chǎn)后 ASIC 的成本會(huì)遠(yuǎn)遠(yuǎn)低于 FPGA 方案。

FPGA 上市速度快, ASIC 上市速度慢,需要大量時(shí)間開(kāi)發(fā),而且一次性成本(光刻掩模制作成本)遠(yuǎn)高于 FPGA,但是性能高于 FPGA 且量產(chǎn)后平均成本低于 FPGA。目標(biāo)市場(chǎng)方面,F(xiàn)PGA 成本較高,所以適合對(duì)價(jià)格不是很敏感的地方,比如企業(yè)應(yīng)用,軍事和工業(yè)電子等等(在這些領(lǐng)域可重配置真的需要)。而 ASIC 由于低成本則適合消費(fèi)電子類(lèi)應(yīng)用,而且在消費(fèi)電子中可配置是否是一個(gè)偽需求還有待商榷。

我們看到的市場(chǎng)現(xiàn)狀也是如此:使用 FPGA 做深度學(xué)習(xí)加速的多是企業(yè)用戶(hù),百度、微軟、IBM 等公司都有專(zhuān)門(mén)做 FPGA 的團(tuán)隊(duì)為服務(wù)器加速,而做 FPGA 方案的初創(chuàng)公司 Teradeep 的目標(biāo)市場(chǎng)也是服務(wù)器。而 ASIC 則主要瞄準(zhǔn)消費(fèi)電子,如 Movidius。由于移動(dòng)終端屬于消費(fèi)電子領(lǐng)域,所以未來(lái)使用的方案應(yīng)當(dāng)是以 ASIC 為主。

3、平臺(tái)性能和功耗比較

由于不同的芯片生產(chǎn)工藝,對(duì)芯片的功耗和性能都有影響,這里用相同工藝或者接近工藝下進(jìn)行對(duì)比,ASIC芯片還沒(méi)有商用的芯片出現(xiàn),Google的TPU也只是自己使用沒(méi)有對(duì)外提供信息,這里ASIC芯片用在學(xué)術(shù)論文發(fā)表的《DianNao: A Small-Footprint High-Throughput Acceleratorfor Ubiquitous Machine-Learning》作為代表。

從上面的對(duì)比來(lái)看,能耗比方面:ASIC > FPGA > GPU > CPU,產(chǎn)生這樣結(jié)果的根本原因:對(duì)于計(jì)算密集型算法,數(shù)據(jù)的搬移和運(yùn)算效率越高的能耗比就越高。ASIC和FPGA都是更接近底層IO,所以計(jì)算效率高和數(shù)據(jù)搬移高,但是FPGA有冗余晶體管和連線(xiàn),運(yùn)行頻率低,所以沒(méi)有ASIC能耗比高。GPU和CPU都是屬于通用處理器,都需要進(jìn)行取指令、指令譯碼、指令執(zhí)行的過(guò)程,通過(guò)這種方式屏蔽了底層IO的處理,使得軟硬件解耦,但帶來(lái)數(shù)據(jù)的搬移和運(yùn)算無(wú)法達(dá)到更高效率,所以沒(méi)有ASIC、FPGA能耗比高。GPU和CPU之間的能耗比的差距,主要在于CPU中晶體管有大部分用在cache和控制邏輯單元,所以CPU相比GPU來(lái)說(shuō),對(duì)于計(jì)算密集同時(shí)計(jì)算復(fù)雜度低的算法,有冗余的晶體管無(wú)法發(fā)揮作用,能耗比上CPU低于GPU。

四、總結(jié)與展望

處理器芯片各自長(zhǎng)期發(fā)展的過(guò)程中,形成了一些使用和市場(chǎng)上鮮明的特點(diǎn)。CPU&GPU領(lǐng)域存在大量的開(kāi)源軟件和應(yīng)用軟件,任何新的技術(shù)首先會(huì)用CPU實(shí)現(xiàn)算法,因此CPU編程的資源豐富而且容易獲得,開(kāi)發(fā)成本低而開(kāi)發(fā)周期。FPGA的實(shí)現(xiàn)采用Verilog/VHDL等底層硬件描述語(yǔ)言實(shí)現(xiàn),需要開(kāi)發(fā)者對(duì)FPGA的芯片特性有較為深入的了解,但其高并行性的特性往往可以使業(yè)務(wù)性能得到量級(jí)的提升;同時(shí)FPGA是動(dòng)態(tài)可重配的,當(dāng)在數(shù)據(jù)中心部署之后,可以根據(jù)業(yè)務(wù)形態(tài)來(lái)配置不同的邏輯實(shí)現(xiàn)不同的硬件加速功能;舉例來(lái)講,當(dāng)前服務(wù)器上的FPGA板卡部署的是圖片壓縮邏輯,服務(wù)于QQ業(yè)務(wù);而此時(shí)廣告實(shí)時(shí)預(yù)估需要擴(kuò)容獲得更多的FPGA計(jì)算資源,通過(guò)簡(jiǎn)單的FPGA重配流程,F(xiàn)PGA板卡即可以變身成“新”硬件來(lái)服務(wù)廣告實(shí)時(shí)預(yù)估,非常適合批量部署。ASIC芯片可以獲得最優(yōu)的性能,即面積利用率高、速度快、功耗低;但是AISC開(kāi)發(fā)風(fēng)險(xiǎn)極大,需要有足夠大的市場(chǎng)來(lái)保證成本價(jià)格,而且從研發(fā)到市場(chǎng)的時(shí)間周期很長(zhǎng),不適合例如深度學(xué)習(xí)CNN等算法正在快速迭代的領(lǐng)域。

講了這么多,當(dāng)遇到業(yè)務(wù)瓶頸的需要異構(gòu)計(jì)算芯片的時(shí)候,你是否能夠根據(jù)業(yè)務(wù)特性和芯片特性選擇出合適的芯片呢?

分析完各類(lèi)芯片特性,接下來(lái),重點(diǎn)來(lái)了!

當(dāng)今的FPGA有很大的性能潛力,支持深度可變的流水線(xiàn)結(jié)構(gòu),提供大量的并行計(jì)算資源,一個(gè)時(shí)鐘周期內(nèi)就可以完成非常復(fù)雜的功能。FPGA的可編程能力保證了這種器件能夠滿(mǎn)足應(yīng)用軟件的特殊需求,不存在設(shè)計(jì)定制協(xié)處理器的成本或者延遲問(wèn)題。FPGA是重新可編程的,它可以在一個(gè)芯片中為多種應(yīng)用提供非常靈活的定制協(xié)處理功能。擁有了FPGA,業(yè)務(wù)就擁有無(wú)限可能。同樣的半導(dǎo)體技術(shù),既能把處理器的性能發(fā)揮到極限,也能使FPGA從簡(jiǎn)單的膠合邏輯控制器,發(fā)展到性能很高的可編程架構(gòu)。FPGA完全能夠滿(mǎn)足HPC市場(chǎng)的“4P”需求。

FPGA的內(nèi)置存儲(chǔ)器也有很大的性能優(yōu)勢(shì)。例如,片內(nèi)存儲(chǔ)器意味著協(xié)處理器邏輯的存儲(chǔ)器訪(fǎng)問(wèn)帶寬不會(huì)受到器件I/O引腳數(shù)量的限制。而且,存儲(chǔ)器和運(yùn)算邏輯緊密結(jié)合,不再需要采用外部高速存儲(chǔ)器緩沖。這樣,也避免了大功耗的緩沖訪(fǎng)問(wèn)和一致性問(wèn)題。使用內(nèi)部存儲(chǔ)器還意味著協(xié)處理器不需要其他的I/O引腳來(lái)提高其可訪(fǎng)問(wèn)存儲(chǔ)器容量,從而簡(jiǎn)化了設(shè)計(jì)。

很多人由于FPGA的開(kāi)發(fā)難度大以及開(kāi)發(fā)周期較長(zhǎng)而對(duì)其持有懷疑態(tài)度,好消息是HLS以及OpenCL語(yǔ)言越來(lái)越完善,很多應(yīng)用直接使用這兩種高級(jí)語(yǔ)言就可以取得較大性能提升。


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1650

    文章

    22207

    瀏覽量

    626910
  • asic
    +關(guān)注

    關(guān)注

    34

    文章

    1264

    瀏覽量

    123519
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11187

    瀏覽量

    221304
  • gpu
    gpu
    +關(guān)注

    關(guān)注

    28

    文章

    5036

    瀏覽量

    133745

原文標(biāo)題:深入理解CPU和異構(gòu)計(jì)算芯片(GPU/FPGA/ASIC)

文章出處:【微信號(hào):eetop-1,微信公眾號(hào):EETOP】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【產(chǎn)品活動(dòng)】阿里云GPU云服務(wù)器年付5折!阿里云異構(gòu)計(jì)算助推行業(yè)發(fā)展!

    的參數(shù)空間已從百萬(wàn)級(jí)上升到百億級(jí),這對(duì)計(jì)算能力提出了新的挑戰(zhàn)。相比CPU,GPU更適合深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)模型,可進(jìn)行高度統(tǒng)異構(gòu)計(jì)算明星規(guī)格族“GN5”。阿里云
    發(fā)表于 12-26 11:22

    掃盲人工智能的計(jì)算力基石--異構(gòu)計(jì)算

    摘要: 本文將帶領(lǐng)入門(mén)讀者了解CPU,GPU,FPGA,ASIC異構(gòu)計(jì)算的一些基本概念和優(yōu)缺點(diǎn),希望幫助入門(mén)者和愛(ài)好者建立基本的
    發(fā)表于 06-28 15:55

    異構(gòu)計(jì)算在人工智能什么作用?

    能力的需求。因此,具有GPU、ASICFPGA 或其它加速器(Accelerator)等高并行、高密集的計(jì)算能力的異構(gòu)計(jì)算持續(xù)火熱,而
    發(fā)表于 08-07 08:39

    什么是異構(gòu)并行計(jì)算

    、GPU、DSP、ASIC、FPGA等。異構(gòu)計(jì)算用簡(jiǎn)單的公式可以表示為“CPU+XXX”。舉例來(lái)說(shuō),AMD著力發(fā)展的APU就屬于
    發(fā)表于 07-19 08:27

    異構(gòu)計(jì)算的前世今生

    異構(gòu)計(jì)算已經(jīng)成了半導(dǎo)體業(yè)界不得不思考的一個(gè)話(huà)題,傳統(tǒng)通用計(jì)算的性能捉襟見(jiàn)肘,過(guò)去承諾的每隔一段時(shí)間芯片性能翻倍的豪言壯語(yǔ)已經(jīng)沒(méi)有人再提了。如今我們用到的手機(jī)中,各種除CPU以外的
    發(fā)表于 12-26 08:00

    異構(gòu)計(jì)算場(chǎng)景下構(gòu)建可信執(zhí)行環(huán)境

    )的杰出講師。 文章內(nèi)容來(lái)源 第一屆開(kāi)放原子開(kāi)源基金會(huì)OpenHarmony技術(shù)峰會(huì)——安全及機(jī)密計(jì)算分論壇 正 文 內(nèi) 容 異構(gòu),即將CPU、DSP、GPU
    發(fā)表于 08-15 17:35

    異構(gòu)計(jì)算芯片的機(jī)遇與挑戰(zhàn)

    異構(gòu)計(jì)算的機(jī)遇與挑戰(zhàn) 異構(gòu)計(jì)算是指不同類(lèi)型的指令集和體系架構(gòu)的計(jì)算單元組成的系統(tǒng)的計(jì)算方式,目前 CPU+GPU以及
    發(fā)表于 09-27 10:22 ?27次下載

    FPGA異構(gòu)計(jì)算現(xiàn)狀及優(yōu)化

    。 WHEN?深度學(xué)習(xí)異構(gòu)計(jì)算現(xiàn)狀 隨著互聯(lián)網(wǎng)用戶(hù)的快速增長(zhǎng),數(shù)據(jù)體量的急劇膨脹,數(shù)據(jù)中心對(duì)計(jì)算的需求也在迅猛上漲。同時(shí),人工智能、高性能數(shù)據(jù)分析和金融分析
    發(fā)表于 11-15 11:44 ?8876次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>異構(gòu)計(jì)算</b>現(xiàn)狀及優(yōu)化

    CPU異構(gòu)計(jì)算芯片GPU/FPGA/ASIC基礎(chǔ)教程

    目前,FPGA已在騰訊海量圖片處理以及檢測(cè)領(lǐng)域已規(guī)模上線(xiàn)。 隨著互聯(lián)網(wǎng)用戶(hù)的快速增長(zhǎng),數(shù)據(jù)體量的急劇膨脹,數(shù)據(jù)中心對(duì)計(jì)算的需求也在迅猛上漲。諸如深度學(xué)習(xí)在線(xiàn)預(yù)測(cè)、直播中的視頻轉(zhuǎn)碼、圖片壓縮解壓縮以及
    發(fā)表于 11-15 19:52 ?6353次閱讀
    <b class='flag-5'>CPU</b>和<b class='flag-5'>異構(gòu)計(jì)算</b><b class='flag-5'>芯片</b><b class='flag-5'>GPU</b>/<b class='flag-5'>FPGA</b>/<b class='flag-5'>ASIC</b>基礎(chǔ)教程

    基于FPGA異構(gòu)計(jì)算是趨勢(shì)

    目前處于AI大爆發(fā)時(shí)期,異構(gòu)計(jì)算的選擇主要在FPGAGPU之間。盡管目前異構(gòu)計(jì)算使用最多的是利用GPU來(lái)加速,
    的頭像 發(fā)表于 04-25 09:17 ?1.1w次閱讀

    異構(gòu)計(jì)算的兩大派別 為什么需要異構(gòu)計(jì)算?

    20世紀(jì)80年代,異構(gòu)計(jì)算技術(shù)就已經(jīng)誕生了。所謂的異構(gòu),就是CPU、DSP、GPU、ASIC、協(xié)處理器、
    發(fā)表于 04-28 11:41 ?2.3w次閱讀

    CPUGPU的區(qū)別

    CPU、GPU等協(xié)處理器、DSP、ASIC、FPGA等。一個(gè)異構(gòu)計(jì)算平臺(tái)往往包含使用不同指令集架構(gòu)(ISA)的處理器。
    的頭像 發(fā)表于 09-04 15:03 ?7422次閱讀
    <b class='flag-5'>CPU</b>與<b class='flag-5'>GPU</b>的區(qū)別

    CPUASIC,架構(gòu)越來(lái)越碎片化

    是超異構(gòu)計(jì)算架構(gòu)。CPU+GPU+FPGA+DSA等多種架構(gòu)處理引擎組成的超異構(gòu)計(jì)算;實(shí)現(xiàn)既要又要:接近CPU的靈活性,接近ASIC的性能效
    發(fā)表于 01-05 11:31 ?2640次閱讀

    新一代計(jì)算架構(gòu)超異構(gòu)計(jì)算技術(shù)是什么 異構(gòu)走向超異構(gòu)案例分析

    異構(gòu)計(jì)算架構(gòu)是一種將不同類(lèi)型和規(guī)模的硬件資源,包括CPU、GPUFPGA等,進(jìn)行異構(gòu)集成的方法。它通過(guò)獨(dú)特的軟件和硬件協(xié)同設(shè)計(jì),實(shí)現(xiàn)了
    發(fā)表于 08-23 09:57 ?1292次閱讀
    新一代<b class='flag-5'>計(jì)算</b>架構(gòu)超<b class='flag-5'>異構(gòu)計(jì)算</b>技術(shù)是什么 <b class='flag-5'>異構(gòu)</b>走向超<b class='flag-5'>異構(gòu)</b>案例<b class='flag-5'>分析</b>

    異構(gòu)計(jì)算的概念、核心、優(yōu)勢(shì)、挑戰(zhàn)及考慮因素

    異構(gòu)計(jì)算就像是一支由“多才多藝”處理器組成的團(tuán)隊(duì),每個(gè)成員都有自己的強(qiáng)項(xiàng)和責(zé)任。 ? 什么是異構(gòu)計(jì)算????? “異構(gòu)計(jì)算”指的是在同一個(gè)計(jì)算平臺(tái)中,部署多種不同類(lèi)型的處理單元(比如
    的頭像 發(fā)表于 01-13 11:43 ?1425次閱讀