GPU與CPU比較,GPU為什么更適合深度學(xué)習(xí)?
一、CPU與GPU對比
CPU是一個有多種功能的優(yōu)秀領(lǐng)導(dǎo)者。它的優(yōu)點在于調(diào)度、管理、協(xié)調(diào)能力強(qiáng),計算能力則位于其次。而GPU相當(dāng)于一個接受CPU調(diào)度的“擁有大量計算能力”的員工。
下圖是處理器內(nèi)部結(jié)構(gòu)圖:
DRAM即動態(tài)隨機(jī)存取存儲器,是常見的系統(tǒng)內(nèi)存。
Cache存儲器:電腦中作高速緩沖存儲器,是位于CPU和主存儲器DRAM之間,規(guī)模較小,但速度很高的存儲器。
算術(shù)邏輯單元ALU是能實現(xiàn)多組算術(shù)運(yùn)算和邏輯運(yùn)算的組合邏輯電路。
當(dāng)需要對大數(shù)據(jù)bigdata做同樣的事情時,GPU更合適,當(dāng)需要對同一數(shù)據(jù)做很多事情時,CPU正好合適。
GPU能做什么?關(guān)于圖形方面的以及大型矩陣運(yùn)算,如機(jī)器學(xué)習(xí)算法等方面,GPU就能大顯身手。
簡而言之,CPU擅長統(tǒng)領(lǐng)全局等復(fù)雜操作,GPU擅長對大數(shù)據(jù)進(jìn)行簡單重復(fù)操作。CPU是從事復(fù)雜腦力勞動的教援,而GPU是進(jìn)行大量并行計算的體力勞動者。
二、機(jī)器深度學(xué)習(xí)
深度學(xué)習(xí)是模擬人腦神經(jīng)系統(tǒng)而建立的數(shù)學(xué)網(wǎng)絡(luò)模型,這個模型的最大特點是,需要大數(shù)據(jù)來訓(xùn)練。因此,對電腦處理器的要求,就是需要大量的并行的重復(fù)計算,GPU正好有這個專長,時勢造英雄,因此,GPU就出山擔(dān)當(dāng)重任了。
GPU具有如下特點:
- 提供了多核并行計算的基礎(chǔ)結(jié)構(gòu),且核心數(shù)非常多,可以支撐大量數(shù)據(jù)的并行計算。并行計算或稱平行計算是相對于串行計算來說的。它是一種一次可執(zhí)行多個指令的算法,目的是提高計算速度,及通過擴(kuò)大問題求解規(guī)模,解決大型而復(fù)雜的計算問題。
- 擁有更高的訪存速度。
- 更高的浮點運(yùn)算能力。浮點運(yùn)算能力是關(guān)系到處理器的多媒體、3D圖形處理的一個重要指標(biāo)?,F(xiàn)在的計算機(jī)技術(shù)中,由于大量多媒體技術(shù)的應(yīng)用,浮點數(shù)的計算大大增加了,比如3D圖形的渲染等工作,因此浮點運(yùn)算的能力是考察處理器計算能力的重要指標(biāo)。
這三個特點,非常適合深度學(xué)習(xí)了。
三、怎樣發(fā)揮GPU的大數(shù)據(jù)處理能力
GPU只是顯卡上的一個核心元件,又不能單獨(dú)工作,它還需要緩存來輔助工作。獨(dú)立顯卡是直接焊死了GPU在顯卡電路板上,上面有一個散熱風(fēng)扇供它單獨(dú)使用。集成顯卡是把GPU與CPU放在一起,共用緩存來工作,并且公用一個散熱風(fēng)扇。
電腦處理一大塊數(shù)據(jù)比處理一個一個數(shù)據(jù)更有效,執(zhí)行指令開銷也會大大降低,因為要處理大塊數(shù)據(jù),意味著需要更多的晶體管來并行工作,現(xiàn)在旗艦級顯卡都是百億以上的晶體管。
因此,要利用GPU做大數(shù)據(jù)處理工作,至少目前來說,還沒有單獨(dú)的GPU板卡可購。只能購買GPU性能優(yōu)越的超級獨(dú)立顯卡,或集成集卡中GPU性能優(yōu)秀的主板。