人工智能的飛速發(fā)展,需要強(qiáng)大的算力作為支撐,這背后NIVIDIA可謂是當(dāng)之無(wú)愧的功臣。NIVIDIA先進(jìn)的GPU技術(shù)和優(yōu)異的軟件生態(tài),使其在競(jìng)爭(zhēng)中脫穎而出,成為市場(chǎng)霸主。目前人工智能在圖像處理及語(yǔ)音識(shí)別領(lǐng)域的研究取得了很好的發(fā)展,在手機(jī)和安防領(lǐng)域也有很多產(chǎn)品落地。在落地過(guò)程中,依然會(huì)面臨設(shè)備算力的問(wèn)題,而移動(dòng)端GPU則自然而然的進(jìn)入了人們的視野。
移動(dòng)端GPU廠商的發(fā)展史
在移動(dòng)端GPU市場(chǎng)中,沒(méi)有形成一家獨(dú)大的競(jìng)爭(zhēng)格局。目前主要的移動(dòng)端GPU廠商有高通,arm和imaginaton。高通的adreno來(lái)自ATI的imageon,ATI最早被AMD收購(gòu),后來(lái)高通收購(gòu)了AMD的移動(dòng)設(shè)備資產(chǎn),取得了AMD的矢量繪圖與3D繪圖技術(shù)和相關(guān)知識(shí)產(chǎn)權(quán)。后來(lái)高通結(jié)合AMD的手機(jī)圖形技術(shù)發(fā)展為自家的Adreno圖形處理器。另一家移動(dòng)計(jì)算的巨頭ARM,ARM在移動(dòng)CPU的市場(chǎng)地位可謂遙不可及,但是在GPU領(lǐng)域,它確是諸多廠商中的一家,他的GPU業(yè)務(wù)也并非一開(kāi)始就擁有,而是后來(lái)組建的。其GPU技術(shù)來(lái)自一家名為Falanx的公司,這家公司是早起從挪威大學(xué)脫離出來(lái)的一個(gè)名為mali的研究小組的成員組建的,最早定位于PC領(lǐng)域,失利后轉(zhuǎn)向SoC GPU設(shè)計(jì)。隨著SoC市場(chǎng)的不斷壯大,以及移動(dòng)計(jì)算的發(fā)展,ARM收購(gòu)了Falanx,組建了自己的GPU事業(yè)部。最后一家,Imagination Technologies,這是一家專注于GPU技術(shù)的公司,最早在桌面級(jí)GPU的競(jìng)爭(zhēng)中失利,后來(lái)轉(zhuǎn)戰(zhàn)移動(dòng)端,Intel,三星,蘋果,聯(lián)發(fā)科,展訊曾經(jīng)都是他的客戶,一度被認(rèn)為是全球最大的移動(dòng)GPU廠商。這家公司可謂命運(yùn)多舛,曾經(jīng)作為蘋果的供應(yīng)商,由于iphone的每代產(chǎn)品在圖形性能方面都比arm公版的Mali GPU有優(yōu)勢(shì),一度讓Imagination風(fēng)光無(wú)二,但是隨著蘋果宣布自研GPU,Imagination的股票出現(xiàn)了斷崖式下跌,公司瀕臨破產(chǎn)。后來(lái)將其業(yè)務(wù)進(jìn)行拆分,MIPS業(yè)務(wù)出售給Tallwood MIPS,而GPU業(yè)務(wù)則出售給中國(guó)背景的私募基金Canyon Bridge。這一收購(gòu)也填補(bǔ)了國(guó)內(nèi)在GPU領(lǐng)域的空白。
在市場(chǎng)占有率方面,由于ARM以及高通的捆綁銷售,Imagination并無(wú)優(yōu)勢(shì),但是鑒于在物聯(lián)網(wǎng)以及人工智能領(lǐng)域,目前三家都還沒(méi)有建立起強(qiáng)大的生態(tài),因此未來(lái)誰(shuí)能稱雄并未可知。
在技術(shù)方面三家GPU廠商架構(gòu)差異比較明顯,而且對(duì)外披露都比較少,相比較來(lái)說(shuō)Imagination發(fā)面對(duì)于技術(shù)方面會(huì)開(kāi)放一些。
Imagination的GPU Rogue架構(gòu)淺析
在關(guān)于GPU的宣傳中很容易看到一個(gè)詞core,而且高端GPU也都是成千上萬(wàn)的core。其實(shí)宣傳中的core并非CPU上“核”的概念。而真正意義上的核心,應(yīng)該是AMD GCN架構(gòu)中的Compute Unit, NVIDIA Maxwell架構(gòu)中的SMM以及PowerVR Rogue架構(gòu)中的USC等。對(duì)應(yīng)于編程語(yǔ)言,應(yīng)該是OpenCL中的Compute Unit(簡(jiǎn)稱CU)。而宣傳中所謂的core,則是OpenCL中的ProcessElement(簡(jiǎn)稱PE)。
目前GPU采用的是多層級(jí)的線程技術(shù),硬件結(jié)構(gòu)和軟件概念的對(duì)照如下圖所示:從硬件結(jié)構(gòu)看,首先是GPU設(shè)備,叫做device;一個(gè)GPU包含多個(gè)CU,而每個(gè)CU又包含多個(gè)計(jì)算通道。從OpenCL的軟件架構(gòu)看,每個(gè)NDRange對(duì)應(yīng)一個(gè)GPU設(shè)備,其包含多個(gè)work-group,而每個(gè)work-group必須在一個(gè)CU上執(zhí)行,也就是說(shuō),每個(gè)CU可以執(zhí)行多個(gè)work-group,但是每個(gè)work-group不可以拆分到多個(gè)CU上去執(zhí)行;每個(gè)work-group包含多個(gè)work-item,一個(gè)計(jì)算通道執(zhí)行一個(gè)work-item。
簡(jiǎn)單介紹一下計(jì)算通道,SIMD叫做單指令多數(shù)據(jù)流(Single instruction MultipleData),目前所有的GPU都術(shù)語(yǔ)SIMD,一般都是16路或者32路SIMD。
關(guān)于線程的調(diào)度,首先介紹一個(gè)概念,AMD的wavefront或者NIVIDIA的warp,這是指線程調(diào)度的最小單位,也就是說(shuō),在GPU中每次執(zhí)行一個(gè)warp,一般一個(gè)warp包含32個(gè)線程;對(duì)于AMD顯卡則是一個(gè)wavefront包含64個(gè)work-item。下文中對(duì)這一概念統(tǒng)稱為warp,線程和work-item通用。在Rogue架構(gòu)中每個(gè)warp也是包含32個(gè)線程。
如下圖所示,是Rogue架構(gòu)的示意圖,GPU中包含有多個(gè)USC(個(gè)數(shù)與產(chǎn)品型號(hào)有關(guān)),每個(gè)USC包含著色器,駐留槽,執(zhí)行單元,存儲(chǔ)器,紋理單元等等等。這樣每個(gè)work-item在自己的生命周期中都包含自己的片上存儲(chǔ)在Unified store中,shared local memory隱藏在common store中,這樣每個(gè)USC都可以在warp之間進(jìn)行零開(kāi)銷的上下文切換。
線程的執(zhí)行過(guò)程如下圖:
圖中的Residency Slots中包含很多slot,每個(gè)slot代表一個(gè)warp,空的表示目前還沒(méi)有部署warp。而部署了warp的slots一共有三個(gè)狀態(tài),綠色表示active,黃色表示ready,可以執(zhí)行了,紅色表示阻塞;active的warp接下來(lái)會(huì)在執(zhí)行單元上執(zhí)行,如圖右側(cè)所示,所有的32個(gè)work-item同時(shí)并行執(zhí)行。Ready的會(huì)在下一個(gè)執(zhí)行周期被調(diào)度執(zhí)行;阻塞的則是因?yàn)樽x寫等原因進(jìn)入該狀態(tài)。
下圖是USC中流水線示意圖,其中包含4個(gè)warp的調(diào)度。Warp0首先被執(zhí)行,warp0會(huì)一直執(zhí)行到它進(jìn)入阻塞狀態(tài),例如讀寫全局存儲(chǔ),此時(shí)調(diào)度器會(huì)停止調(diào)度warp0,開(kāi)始執(zhí)行warp1;因?yàn)閣arp中的所有工作項(xiàng)執(zhí)行相同的kernel代碼,因此就有相同的特性,例如同時(shí)進(jìn)入阻塞;在warp2進(jìn)入阻塞狀態(tài)時(shí),warp0讀寫結(jié)束,進(jìn)入read狀態(tài);最后在調(diào)度器調(diào)度完warp3后,重新開(kāi)始調(diào)度warp0。這樣并發(fā)執(zhí)行可以實(shí)現(xiàn)對(duì)內(nèi)存訪問(wèn)延遲的隱藏。因此在編程實(shí)現(xiàn)中一般使用較大的工作組,來(lái)實(shí)現(xiàn)warp切換對(duì)內(nèi)存訪問(wèn)的延遲(當(dāng)然,這不是絕對(duì)的,在實(shí)際中還要考慮寄存器等資源的消耗情況)。
下圖展示了Rogue架構(gòu)下得PowerVR Series7XT系列的架構(gòu)圖。
該系列的GPU擁有2到16個(gè)USC,因此具有100GFLOPS到1.5TFLOPS的可擴(kuò)展性能。如下圖展示了該系列GPU的USC架構(gòu)。
以GT7400為例,其擁有128個(gè)FP32ALU核心,256個(gè)FP16 ALU核心。每個(gè)USC中包含16個(gè)pipelines,每個(gè)pipelines中含有多個(gè)ALU。其中的SFU可以原生的處理FP16、FP32(上一代會(huì)全部推給FP32),因此這一代架構(gòu)可以避免沒(méi)有必要的高精度操作,提升了性能并降低了功耗。
目前Imagenition已經(jīng)發(fā)布了最新的GPU架構(gòu)Furian,該架構(gòu)相對(duì)于多年來(lái)已成業(yè)界標(biāo)桿的Rogue架構(gòu)有了在性能方面有了更大的提升。
-
gpu
+關(guān)注
關(guān)注
28文章
4948瀏覽量
131250 -
人工智能
+關(guān)注
關(guān)注
1806文章
49028瀏覽量
249545
原文標(biāo)題:移動(dòng)GPU淺談
文章出處:【微信號(hào):SSDFans,微信公眾號(hào):SSDFans】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
【「DeepSeek 核心技術(shù)揭秘」閱讀體驗(yàn)】書籍介紹+第一章讀后心得
深圳 SMT:現(xiàn)代電子制造的核心技術(shù)
非標(biāo)定制超聲波清洗設(shè)備的核心技術(shù)解析與應(yīng)用

工業(yè)物聯(lián)網(wǎng)的核心技術(shù)是什么
【書籍評(píng)測(cè)活動(dòng)NO.62】一本書讀懂 DeepSeek 全家桶核心技術(shù):DeepSeek 核心技術(shù)揭秘
半導(dǎo)體材料發(fā)展史:從硅基到超寬禁帶半導(dǎo)體的跨越
深入探討DeepSeek大模型的核心技術(shù)

移動(dòng)機(jī)器人核心科技解碼:導(dǎo)航、感知與掌控力的深度剖析
從市場(chǎng)角度解讀機(jī)器人核心關(guān)鍵技術(shù)

從MCU到SoC:汽車芯片核心技術(shù)的深度剖析

淺談顯示屏的發(fā)展史
新能源汽車小三電的核心技術(shù)

簡(jiǎn)述半導(dǎo)體材料的發(fā)展史
AI網(wǎng)絡(luò)發(fā)展的四大核心技術(shù)支柱
三菱電機(jī)功率器件發(fā)展史

評(píng)論