一、Why GPU
其實(shí)GPU計(jì)算比CPU并不是“效果好”,而是“速度快”。
計(jì)算就是計(jì)算,數(shù)學(xué)上都是一樣的,1+1用什么算都是2,CPU算神經(jīng)網(wǎng)絡(luò)也是可以的,算出來(lái)的神經(jīng)網(wǎng)絡(luò)放到實(shí)際應(yīng)用中效果也很好,只不過(guò)速度會(huì)很慢罷了。
GPU的起源
GPU全稱(chēng)叫做graphics processing unit,圖形處理器,顧名思義就是處理圖形的。
電腦顯示器上顯示的圖像,在顯示在顯示器上之前,要經(jīng)過(guò)一些列處理,這個(gè)過(guò)程有個(gè)專(zhuān)有的名詞叫“渲染”。以前的計(jì)算機(jī)上沒(méi)有GPU,渲染就是CPU負(fù)責(zé)的。渲染是個(gè)什么操作呢,其實(shí)就是做了一系列圖形的計(jì)算,但這些計(jì)算往往非常耗時(shí),占用了CPU的一大部分時(shí)間。而CPU還要處理計(jì)算機(jī)器許多其他任務(wù)。因此就專(zhuān)門(mén)針對(duì)圖形處理的這些操作設(shè)計(jì)了一種處理器,也就是GPU。這樣CPU就可以從繁重的圖形計(jì)算中解脫出來(lái)。
由于GPU是專(zhuān)門(mén)為了渲染設(shè)計(jì)的,那么他也就只能做渲染的那些事情。
渲染這個(gè)過(guò)程具體來(lái)說(shuō)就是幾何點(diǎn)位置和顏色的計(jì)算,這兩者的計(jì)算在數(shù)學(xué)上都是用四維向量和變換矩陣的乘法,因此GPU也就被設(shè)計(jì)為專(zhuān)門(mén)適合做類(lèi)似運(yùn)算的專(zhuān)用處理器了。為什么說(shuō)專(zhuān)用呢,因?yàn)楹芏嗍虑樗霾涣恕?/p>
CPU通用性強(qiáng),但是專(zhuān)用領(lǐng)域性能低。工程就是折衷,這項(xiàng)強(qiáng)了,別的就弱了。再后來(lái)游戲、3D設(shè)計(jì)對(duì)渲染的要求越來(lái)越高,GPU的性能越做越強(qiáng)。論純理論計(jì)算性能,要比CPU高出幾十上百倍。
人們就想了,既然GPU這么強(qiáng),那用GPU做計(jì)算是不是相比CPU速度能大大提升呢?于是就有了GPGPU(general purpose GPU,通用計(jì)算GPU)這個(gè)概念。但我們前面提到了,GPU是專(zhuān)門(mén)為了圖像渲染設(shè)計(jì)的,他只適用于那些操作。但幸運(yùn)的是有些操作和GPU本職能做的那些東西非常像,那就可以通過(guò)GPU提高速度,比如深度學(xué)習(xí)。
深度學(xué)習(xí)中一類(lèi)成功應(yīng)用的技術(shù)叫做卷積神經(jīng)網(wǎng)絡(luò)CNN,這種網(wǎng)絡(luò)數(shù)學(xué)上就是許多卷積運(yùn)算和矩陣運(yùn)算的組合,而卷積運(yùn)算通過(guò)一定的數(shù)學(xué)手段也可以通過(guò)矩陣運(yùn)算完成。這些操作和GPU本來(lái)能做的那些圖形點(diǎn)的矩陣運(yùn)算是一樣的。因此深度學(xué)習(xí)就可以非常恰當(dāng)?shù)赜肎PU進(jìn)行加速了。
以前GPGPU(通用GPU)概念不是很火熱,GPU設(shè)計(jì)出來(lái)就是為了圖形渲染。想要利用GPU輔助計(jì)算,就要完全遵循GPU的硬件架構(gòu)。而現(xiàn)在GPGPU越來(lái)越流行,廠家在設(shè)計(jì)和生產(chǎn)GPU的時(shí)候也會(huì)照顧到計(jì)算領(lǐng)域的需求了。
二、GPGPU與GPU的區(qū)別
GPU的產(chǎn)生是為了解決圖形渲染效率的問(wèn)題,但隨著技術(shù)進(jìn)步,GPU越來(lái)越強(qiáng)大,尤其是shader出現(xiàn)之后(這個(gè)允許我們?cè)贕PU上編程),GPU能做的事越來(lái)越多,不再局限于圖形領(lǐng)域,也就有人動(dòng)手將其能力擴(kuò)展到其他計(jì)算密集的領(lǐng)域,這就是GP(General Purpose)GPU。
三、為什么快
比如說(shuō)你用美圖xx軟件,給一張圖片加上模糊效果的時(shí)候,CPU會(huì)這么做:
使用一個(gè)模糊濾鏡算子的小窗口,從圖片的左上角開(kāi)始處理,并從左往右,再?gòu)淖笸疫M(jìn)行游走處理,直到整個(gè)圖片被處理完成。因?yàn)镃PU只有一個(gè)或者少數(shù)幾個(gè)核,所以執(zhí)行這種運(yùn)算的時(shí)候,只能老老實(shí)實(shí)從頭遍歷到最后。
但是有一些聰明的讀者會(huì)發(fā)現(xiàn),每個(gè)窗口在處理圖片的過(guò)程中,都是獨(dú)立的,相互沒(méi)有關(guān)系的。那么同時(shí)用幾個(gè)濾鏡窗口來(lái)處理是不是更快一些? 于是我們有了GPU, 一般的GPU都有幾百個(gè)核心,意味著,我們可以同時(shí)有好幾百個(gè)濾鏡窗口來(lái)處理這張圖片。
所以說(shuō),GPU起初的設(shè)計(jì)目標(biāo)就是為了處理這種圖形圖像的渲染工作,而這種工作的特性就是可以分布式、每個(gè)處理單元之間較為獨(dú)立,沒(méi)有太多的關(guān)聯(lián)。而一部分機(jī)器學(xué)習(xí)算法,比如遺傳算法,神經(jīng)網(wǎng)絡(luò)等,也具有這種分布式及局部獨(dú)立的特性(e.g.比如說(shuō)一條神經(jīng)網(wǎng)絡(luò)中的鏈路跟另一條鏈路之間是同時(shí)進(jìn)行計(jì)算,而且相互之間沒(méi)有依賴(lài)的),這種情況下可以采用大量小核心同時(shí)運(yùn)算的方式來(lái)加快運(yùn)算速度。
-
gpu
+關(guān)注
關(guān)注
28文章
5194瀏覽量
135467 -
人工智能
+關(guān)注
關(guān)注
1817文章
50098瀏覽量
265413 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8553瀏覽量
136956
原文標(biāo)題:為何GPU可以用于加速人工智能或者機(jī)器學(xué)習(xí)的計(jì)算速度?
文章出處:【微信號(hào):Imgtec,微信公眾號(hào):Imagination Tech】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
淺談人工智能(2)
人工智能與機(jī)器學(xué)習(xí)在這些行業(yè)的深度應(yīng)用
神經(jīng)網(wǎng)絡(luò)的并行計(jì)算與加速技術(shù)
利用超微型 Neuton ML 模型解鎖 SoC 邊緣人工智能
Lambda采用Supermicro NVIDIA Blackwell GPU服務(wù)器集群構(gòu)建人工智能工廠
挖到寶了!人工智能綜合實(shí)驗(yàn)箱,高校新工科的寶藏神器
挖到寶了!比鄰星人工智能綜合實(shí)驗(yàn)箱,高校新工科的寶藏神器!
關(guān)于人工智能處理器的11個(gè)誤解
超小型Neuton機(jī)器學(xué)習(xí)模型, 在任何系統(tǒng)級(jí)芯片(SoC)上解鎖邊緣人工智能應(yīng)用.
FPGA在機(jī)器學(xué)習(xí)中的具體應(yīng)用
AI芯片:加速人工智能計(jì)算的專(zhuān)用硬件引擎
最新人工智能硬件培訓(xùn)AI 基礎(chǔ)入門(mén)學(xué)習(xí)課程參考2025版(大模型篇)
大模型推理顯存和計(jì)算量估計(jì)方法研究
開(kāi)售RK3576 高性能人工智能主板
Cognizant將與NVIDIA合作部署神經(jīng)人工智能平臺(tái),加速企業(yè)人工智能應(yīng)用
GPU如何加速人工智能或機(jī)器學(xué)習(xí)的計(jì)算速度
評(píng)論