加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專(zhuān)業(yè)用戶(hù)
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
    • █ CPU(中央處理器)
    • █ GPU(圖形處理器)
    • █ GPU與AI計(jì)算
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

AI計(jì)算,為什么要用GPU?

01/03 10:30
2494
閱讀需 13 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

今天這篇文章,我們繼續(xù)來(lái)聊聊芯片。

在之前的文章里,小棗君說(shuō)過(guò),行業(yè)里通常會(huì)把半導(dǎo)體芯片分為數(shù)字芯片和模擬芯片。其中,數(shù)字芯片的市場(chǎng)規(guī)模占比較大,達(dá)到70%左右。

數(shù)字芯片,還可以進(jìn)一步細(xì)分,分為:邏輯芯片存儲(chǔ)芯片以及微控制單元(MCU)。

存儲(chǔ)芯片和MCU以后再介紹,今天小棗君重點(diǎn)講講邏輯芯片。

邏輯芯片,其實(shí)說(shuō)白了就是計(jì)算芯片。它包含了各種邏輯門(mén)電路,可以實(shí)現(xiàn)運(yùn)算與邏輯判斷功能,是最常見(jiàn)的芯片之一。

大家經(jīng)常聽(tīng)說(shuō)的CPU、GPU、FPGA、ASIC,全部都屬于邏輯芯片。而現(xiàn)在特別火爆的AI,用到的所謂“AI芯片”,也主要是指它們。

CPU(中央處理器)

先說(shuō)說(shuō)大家最熟悉的CPU,英文全稱(chēng)Central Processing Unit,中央處理器。

但凡是個(gè)人都知道,CPU是計(jì)算機(jī)的心臟。

現(xiàn)代計(jì)算機(jī),都是基于1940年代誕生的馮·諾依曼架構(gòu)。在這個(gè)架構(gòu)中,包括了運(yùn)算器(也叫邏輯運(yùn)算單元,ALU)、控制器(CU)、存儲(chǔ)器、輸入設(shè)備、輸出設(shè)備等組成部分。

馮·諾依曼架構(gòu)

數(shù)據(jù)來(lái)了,會(huì)先放到存儲(chǔ)器。然后,控制器會(huì)從存儲(chǔ)器拿到相應(yīng)數(shù)據(jù),再交給運(yùn)算器進(jìn)行運(yùn)算。運(yùn)算完成后,再把結(jié)果返回到存儲(chǔ)器。

這個(gè)流程,還有一個(gè)更有逼格的叫法:“Fetch(取指)-Decode(譯碼)- Execute(執(zhí)行)-Memory Access(訪(fǎng)存)-Write Back(寫(xiě)回)”。

大家看到了,運(yùn)算器和控制器這兩個(gè)核心功能,都是由CPU負(fù)責(zé)承擔(dān)的。

具體來(lái)說(shuō),運(yùn)算器(包括加法器、減法器、乘法器、除法器),負(fù)責(zé)執(zhí)行算術(shù)和邏輯運(yùn)算,是真正干活的??刂破?,負(fù)責(zé)從內(nèi)存中讀取指令、解碼指令、執(zhí)行指令,是指手畫(huà)腳的。

除了運(yùn)算器和控制器之外,CPU還包括時(shí)鐘模塊和寄存器(高速緩存)等組件。

時(shí)鐘模塊負(fù)責(zé)管理CPU的時(shí)間,為CPU提供穩(wěn)定的時(shí)基。它通過(guò)周期性地發(fā)出信號(hào),驅(qū)動(dòng)CPU中的所有操作,調(diào)度各個(gè)模塊的工作。

寄存器是CPU中的高速存儲(chǔ)器,用于暫時(shí)保存指令和數(shù)據(jù)。它的CPU與內(nèi)存(RAM)之間的“緩沖”,速度比一般的內(nèi)存更快,避免內(nèi)存“拖累”CPU的工作。

寄存器的容量和存取性能,可以影響CPU到對(duì)內(nèi)存的訪(fǎng)問(wèn)次數(shù),進(jìn)而影響整個(gè)系統(tǒng)的效率。后面我們講存儲(chǔ)芯片的時(shí)候,還會(huì)提到它。

CPU一般會(huì)基于指令集架構(gòu)進(jìn)行分類(lèi),包括x86架構(gòu)和非x86架構(gòu)。x86基本上都是復(fù)雜指令集(CISC),而非x86基本為精簡(jiǎn)指令集(RISC)。

PC和大部分服務(wù)器用的是x86架構(gòu),英特爾AMD公司占據(jù)主導(dǎo)地位。非x86架構(gòu)的類(lèi)型比較多,這些年崛起速度很快,主要有ARM、MIPS、Power、RISC-V、Alpha等。以后會(huì)專(zhuān)門(mén)介紹。

GPU(圖形處理器)

再來(lái)看看GPU。

GPU是顯卡的核心部件,英文全名叫Graphics Processing Unit,圖形處理單元(圖形處理器)。

GPU并不能和顯卡劃等號(hào)。顯卡除了GPU之外,還包括顯存、VRM穩(wěn)壓模塊、MRAM芯片、總線(xiàn)、風(fēng)扇、外圍設(shè)備接口等。

1999年,英偉達(dá)NVIDIA)公司率先提出了GPU的概念。

之所以要提出GPU,是因?yàn)?0年代游戲和多媒體業(yè)務(wù)高速發(fā)展。這些業(yè)務(wù)給計(jì)算機(jī)的3D圖形處理和渲染能力提出了更高的要求。傳統(tǒng)CPU搞不定,所以引入了GPU,分擔(dān)這方面的工作。

根據(jù)形態(tài),GPU可分為獨(dú)立GPU(dGPU,discrete/dedicated GPU)和集成GPU(iGPU,integrated GPU),也就是常說(shuō)的獨(dú)顯、集顯。

GPU也是計(jì)算芯片。所以,它和CPU一樣,包括了運(yùn)算器、控制器和寄存器等組件。

但是,因?yàn)镚PU主要負(fù)責(zé)圖形處理任務(wù),所以,它的內(nèi)部架構(gòu)和CPU存在很大的不同。

如上圖所示,CPU的內(nèi)核(包括了ALU)數(shù)量比較少,最多只有幾十個(gè)。但是,CPU有大量的緩存(Cache)和復(fù)雜的控制器(CU)。

這樣設(shè)計(jì)的原因,是因?yàn)镃PU是一個(gè)通用處理器。作為計(jì)算機(jī)的主核心,它的任務(wù)非常復(fù)雜,既要應(yīng)對(duì)不同類(lèi)型的數(shù)據(jù)計(jì)算,還要響應(yīng)人機(jī)交互

復(fù)雜的條件和分支,還有任務(wù)之間的同步協(xié)調(diào),會(huì)帶來(lái)大量的分支跳轉(zhuǎn)和中斷處理工作。它需要更大的緩存,保存各種任務(wù)狀態(tài),以降低任務(wù)切換時(shí)的時(shí)延。它也需要更復(fù)雜的控制器,進(jìn)行邏輯控制和調(diào)度。

CPU的強(qiáng)項(xiàng)是管理和調(diào)度。真正干活的功能,反而不強(qiáng)(ALU占比大約5%~20%)。

如果我們把處理器看成是一個(gè)餐廳的話(huà),CPU就像一個(gè)擁有幾十名高級(jí)廚師的全能型餐廳。這個(gè)餐廳什么菜系都能做,但是,因?yàn)椴讼刀?,所以需要花費(fèi)大量的時(shí)間協(xié)調(diào)、配菜,上菜的速度相對(duì)比較慢。

而GPU則完全不同。

GPU為圖形處理而生,任務(wù)非常明確且單一。它要做的,就是圖形渲染。圖形是由海量像素點(diǎn)組成的,屬于類(lèi)型高度統(tǒng)一、相互無(wú)依賴(lài)的大規(guī)模數(shù)據(jù)。

所以,GPU的任務(wù),是在最短的時(shí)間里,完成大量同質(zhì)化數(shù)據(jù)的并行運(yùn)算。所謂調(diào)度和協(xié)調(diào)的“雜活”,反而很少。

并行計(jì)算,當(dāng)然需要更多的核啊。

如前圖所示,GPU的內(nèi)核數(shù),遠(yuǎn)遠(yuǎn)超過(guò)CPU,可以達(dá)到幾千個(gè)甚至上萬(wàn)個(gè)(也因此被稱(chēng)為“眾核”)。

GPU的核,稱(chēng)為流式多處理器(Stream Multi-processor,SM),是一個(gè)獨(dú)立的任務(wù)處理單元。

在整個(gè)GPU中,會(huì)劃分為多個(gè)流式處理區(qū)。每個(gè)處理區(qū),包含數(shù)百個(gè)內(nèi)核。每個(gè)內(nèi)核,相當(dāng)于一顆簡(jiǎn)化版的CPU,具備整數(shù)運(yùn)算和浮點(diǎn)運(yùn)算的功能,以及排隊(duì)和結(jié)果收集功能。

GPU的控制器功能簡(jiǎn)單,緩存也比較少。它的ALU占比,可以達(dá)到80%以上。

雖然GPU單核的處理能力弱于CPU,但是數(shù)量龐大,非常適合高強(qiáng)度并行計(jì)算。同等晶體管規(guī)模條件下,它的算力,反而比CPU更強(qiáng)。

還是以餐廳為例。GPU就像一個(gè)擁有成千上萬(wàn)名初級(jí)廚師的單一型餐廳。它只適合做某種指定菜系。但是,因?yàn)閺N師多,配菜簡(jiǎn)單,所以大家一起炒,上菜速度反而快。

GPU與AI計(jì)算

大家都知道,現(xiàn)在的AI計(jì)算,都在搶購(gòu)GPU。英偉達(dá)也因此賺得盆滿(mǎn)缽滿(mǎn)。為什么會(huì)這樣呢?

原因很簡(jiǎn)單,因?yàn)锳I計(jì)算和圖形計(jì)算一樣,也包含了大量的高強(qiáng)度并行計(jì)算任務(wù)。

深度學(xué)習(xí)是目前最主流的人工智能算法。從過(guò)程來(lái)看,包括訓(xùn)練(training)和推理(inference)兩個(gè)環(huán)節(jié)。

在訓(xùn)練環(huán)節(jié),通過(guò)投喂大量的數(shù)據(jù),訓(xùn)練出一個(gè)復(fù)雜的神經(jīng)網(wǎng)絡(luò)模型。在推理環(huán)節(jié),利用訓(xùn)練好的模型,使用大量數(shù)據(jù)推理出各種結(jié)論。

訓(xùn)練環(huán)節(jié)由于涉及海量的訓(xùn)練數(shù)據(jù),以及復(fù)雜的深度神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),所以需要的計(jì)算規(guī)模非常龐大,對(duì)芯片的算力性能要求比較高。而推理環(huán)節(jié),對(duì)簡(jiǎn)單指定的重復(fù)計(jì)算和低延遲的要求很高。

它們所采用的具體算法,包括矩陣相乘、卷積、循環(huán)層、梯度運(yùn)算等,分解為大量并行任務(wù),可以有效縮短任務(wù)完成的時(shí)間。

GPU憑借自身強(qiáng)悍的并行計(jì)算能力以及內(nèi)存帶寬,可以很好地應(yīng)對(duì)訓(xùn)練和推理任務(wù),已經(jīng)成為業(yè)界在深度學(xué)習(xí)領(lǐng)域的首選解決方案。

目前,大部分企業(yè)的AI訓(xùn)練,采用的是英偉達(dá)的GPU集群。如果進(jìn)行合理優(yōu)化,一塊GPU卡,可以提供相當(dāng)于數(shù)十其至上百臺(tái)CPU服務(wù)器的算力。

不過(guò),在推理環(huán)節(jié),GPU的市場(chǎng)份額占比并沒(méi)有那么高。具體原因我們后面會(huì)講。

將GPU應(yīng)用于圖形之外的計(jì)算,最早源于2003年。

那一年,GPGPU(General Purpose computing on GPU,基于GPU的通用計(jì)算)的概念首次被提出。意指利用GPU的計(jì)算能力,在非圖形處理領(lǐng)域進(jìn)行更通用、更廣泛的科學(xué)計(jì)算。

GPGPU在傳統(tǒng)GPU的基礎(chǔ)上,進(jìn)行了進(jìn)一步的優(yōu)化設(shè)計(jì),使之更適合高性能并行計(jì)算。

2009年,斯坦福的幾位學(xué)者,首次展示了利用GPU訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)的成果,引起了轟動(dòng)。

幾年后,2012年,神經(jīng)網(wǎng)絡(luò)之父杰弗里·辛頓(Geoffrey Hinton)的兩個(gè)學(xué)生——亞歷克斯·克里切夫斯基(Alex Krizhevsky)、伊利亞·蘇茨克沃(Ilya Sutskever),利用“深度學(xué)習(xí)+GPU”的方案,提出了深度神經(jīng)網(wǎng)絡(luò)AlexNet,將識(shí)別成功率從74%提升到85%,一舉贏得Image Net挑戰(zhàn)賽的冠軍。

這徹底引爆了“AI+GPU”的浪潮。英偉達(dá)公司迅速跟進(jìn),砸了大量的資源,在三年時(shí)間里,將GPU性能提升了65倍。

除了硬剛算力之外,他們還積極構(gòu)建圍繞GPU的開(kāi)發(fā)生態(tài)。他們建立了基于自家GPU的CUDA(Compute Unified Device Architecture)生態(tài)系統(tǒng),提供完善的開(kāi)發(fā)環(huán)境和方案,幫助開(kāi)發(fā)人員更容易地使用GPU進(jìn)行深度學(xué)習(xí)開(kāi)發(fā)或高性能運(yùn)算。

這些早期的精心布局,最終幫助英偉達(dá)在AIGC爆發(fā)時(shí)收獲了巨大的紅利。目前,他們市值高達(dá)1.22萬(wàn)億美元(英特爾的近6倍),是名副其實(shí)的“AI無(wú)冕之王”。

那么,AI時(shí)代的計(jì)算,是不是GPU一家通吃呢?我們經(jīng)常聽(tīng)說(shuō)的FPGA和ASIC,好像也是不錯(cuò)的計(jì)算芯片。它們的區(qū)別和優(yōu)勢(shì)在哪里呢?

敬請(qǐng)期待下集:《到底什么是ASIC和FPGA》

參考文獻(xiàn):

1、《一文搞懂GPU的概念、工作原理》,開(kāi)源LINUX;2、《AI芯片架構(gòu)體系綜述》,知乎,Garvin Li;3、《GPU、FPGA、ASIC加速器有什么區(qū)別?》,知乎,胡說(shuō)漫談;4、《帶你深入了解GPU、FPGA和ASIC》,汽車(chē)產(chǎn)業(yè)前線(xiàn)觀(guān)察;5、《為什么GPU是AI時(shí)代的算力核心》,沐曦集成電路;6、《一文通覽自動(dòng)駕駛三大主流芯片架構(gòu)》,數(shù)字化轉(zhuǎn)型;7、《AIGC算力全景與趨勢(shì)報(bào)告》,量子位;8、百度百科、維基百科。

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠(chǎng)商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
ATXMEGA128A1U-AUR 1 Atmel Corporation RISC Microcontroller, 16-Bit, FLASH, AVR RISC CPU, 32MHz, CMOS, PQFP100, TQFP-100
$73.57 查看
LPC1768FBD100K 1 NXP Semiconductors RISC Microcontroller

ECAD模型

下載ECAD模型
$17.16 查看
DSPIC30F6014A-30I/PT 1 Microchip Technology Inc 16-BIT, FLASH, 30 MHz, RISC MICROCONTROLLER, PQFP80, 12 X 12 MM, 1 MM HEIGHT, PLASTIC, MS-026, TQFP-80

ECAD模型

下載ECAD模型
$12 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

通信行業(yè)知名新媒體鮮棗課堂創(chuàng)始人,通信行業(yè)資深專(zhuān)家、行業(yè)分析師、自媒體作者,《智聯(lián)天下:移動(dòng)通信改變中國(guó)》叢書(shū)作者。通信行業(yè)13年工作經(jīng)驗(yàn),曾長(zhǎng)期任職于中興通訊股份有限公司,從事2/3/4G及5G相關(guān)技術(shù)領(lǐng)域方面的研究,曾擔(dān)任中興通訊核心網(wǎng)產(chǎn)品線(xiàn)產(chǎn)品經(jīng)理、能力提升總監(jiān)、中興通訊學(xué)院二級(jí)講師、中興通訊高級(jí)主任工程師,擁有豐富的行業(yè)經(jīng)驗(yàn)和積累。