《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 業(yè)界動(dòng)態(tài) > 應(yīng)對(duì)下一代移動(dòng)圖形處理的挑戰(zhàn)

應(yīng)對(duì)下一代移動(dòng)圖形處理的挑戰(zhàn)

2017-01-19
關(guān)鍵詞: GPU 平板電腦 ARM IP技術(shù)

  GPU市場(chǎng)增長(zhǎng)與Mali 技術(shù)的成功

  2006年,圖形處理器(GPU)總出貨量約為1.35億,廣泛用于智能手機(jī)、DTV和平板電腦等多種設(shè)備。同年,ARM 完成對(duì)挪威Falanx公司的收購(gòu),并獲得其移動(dòng)GPU技術(shù),完成對(duì)原有IP技術(shù)的擴(kuò)展。10年后的今天,僅智能手機(jī)的全球出貨量就已達(dá)到15億臺(tái)(據(jù)ARM內(nèi)部數(shù)據(jù)和Gartner數(shù)據(jù)顯示);短短10年時(shí)間,ARM Mali技術(shù)也已成為全球出貨量第一的GPU,2015年總計(jì)出貨量超過(guò)7.5億。

  本文將重點(diǎn)討論GPU市場(chǎng)、技術(shù)、應(yīng)用案例,以及GPU爆炸式發(fā)展背后的深層原因。同時(shí),文章還將簡(jiǎn)述ARM Mali GPU及其架構(gòu)在過(guò)去10年的演進(jìn),并介紹搭載全新Bifrost架構(gòu)的Mali-G71。

1.png

  API與制程節(jié)點(diǎn)開(kāi)發(fā)

  對(duì)圖形領(lǐng)域而言,2015年振奮人心——全新應(yīng)用程序接口(API)的出現(xiàn)允許開(kāi)發(fā)商將基礎(chǔ)圖形硬件發(fā)揮至技術(shù)允許的最高水平。

  同年,Khronos團(tuán)隊(duì)的工作引發(fā)有關(guān)Vulkan的熱烈討論。Vulkan是新一代OpenGL API,為新一代圖形API設(shè)計(jì)量身打造。Vulkan足以滿足全部需求,并徹底終結(jié)了OpenGL ES和OpenGL作為API各自為政的時(shí)代。

  Vulkan于2016年2月正式發(fā)布,是首款按照開(kāi)發(fā)商需求設(shè)計(jì)的Khronos API。它由游戲引擎開(kāi)發(fā)商、芯片提供商、IP公司和操作系統(tǒng)供應(yīng)商共同開(kāi)發(fā),以期打造兼顧各相關(guān)方需求的最佳解決方案。Vulkan API應(yīng)運(yùn)而生,采用全新異構(gòu)系統(tǒng),不僅內(nèi)置多線程支持,而且可以最大程度發(fā)揮硬件一致性的優(yōu)勢(shì)。Vulkan屬于底層API,允許開(kāi)發(fā)商自主決定硬件交互方式,并通過(guò)底層接入以找到最佳平衡點(diǎn)。

  上述特性對(duì)虛擬現(xiàn)實(shí)(VR)等新興應(yīng)用尤為重要,幫助開(kāi)放商減少延遲,優(yōu)化圖形流水線。

2.png

  對(duì)聚焦GPU運(yùn)算應(yīng)用的開(kāi)發(fā)商來(lái)說(shuō),OpenCL 2的發(fā)布是一個(gè)重要節(jié)點(diǎn),多項(xiàng)全新理念進(jìn)一步簡(jiǎn)化了高性能GPGPU應(yīng)用的開(kāi)發(fā)流程。虛擬存儲(chǔ)共享概念的提出可以說(shuō)最為關(guān)鍵,允許CPU和GPU之間的虛擬地址共享。與硬件一致性結(jié)合后,細(xì)粒度緩沖器共享成為現(xiàn)實(shí)。該技術(shù)簡(jiǎn)化了實(shí)現(xiàn)CPU和GPU工作負(fù)載共享所需的開(kāi)發(fā)工作,因?yàn)閮烧唛g的數(shù)據(jù)雙向傳輸不再是必要條件。

  半導(dǎo)體制造工藝也經(jīng)歷了巨大革新。2014年,臺(tái)積電與三星推出20納米工藝節(jié)點(diǎn),標(biāo)志著平面工藝節(jié)點(diǎn)的10年歷史終于落幕。2015年,三星在Exynos 7420上使用全新14納米FinFet技術(shù),臺(tái)積電緊隨其后,推出16納米FinFet工藝,并搭載于蘋(píng)果A9芯片。2016年,工藝節(jié)點(diǎn)獲得進(jìn)一步完善,成本降低,產(chǎn)量增加。步入2017年, 10納米工藝節(jié)點(diǎn)也不再是夢(mèng)想。

  從GPU的角度看,工藝節(jié)點(diǎn)技術(shù)的進(jìn)步對(duì)整個(gè)行業(yè)意義非凡。首先,工藝節(jié)點(diǎn)越先進(jìn),單位區(qū)域(或功耗)的晶體管密度就越大。GPU屬于并行處理器,只要架構(gòu)擴(kuò)展,性能就會(huì)隨之提升。然而,先進(jìn)工藝節(jié)點(diǎn)對(duì)布線的擴(kuò)展效果不如晶體管。恰恰相反,Ergo 工藝制程從28納米優(yōu)化至14納米,SoC設(shè)計(jì)師得以實(shí)現(xiàn)更高的晶體管密度,但卻不如布線的擴(kuò)展。這意味著,如果設(shè)計(jì)10納米GPU時(shí)采用與28納米同樣的方法,設(shè)計(jì)結(jié)果必然會(huì)打折扣,因?yàn)榫w管和布線各有權(quán)衡,不盡相同。設(shè)計(jì)師常常需要妥協(xié),使IP適應(yīng)某個(gè)節(jié)點(diǎn),這種權(quán)衡隨著先進(jìn)工藝節(jié)點(diǎn)數(shù)量的增加變得愈加重要。

  深入探討高端移動(dòng)GPU的性能如何繼續(xù)提高之前,我們需要特別指出GPU性能從2011年到2016年提升了20倍這個(gè)有趣的事實(shí)。由于手機(jī)同時(shí)變得更加輕薄,因此該數(shù)字并不能代表技術(shù)進(jìn)步的全景,但現(xiàn)代移動(dòng)設(shè)備開(kāi)發(fā)商對(duì)性能提升的渴求已經(jīng)可見(jiàn)一斑。

3.png

  移動(dòng)設(shè)備開(kāi)發(fā)商不斷完善現(xiàn)有用例,開(kāi)發(fā)顛覆性的新用例,以保持創(chuàng)新節(jié)奏,并從新一輪的性能升級(jí)中獲益。

  案例開(kāi)發(fā)

  隨著移動(dòng)平臺(tái)的發(fā)展,各類傳感器層出不窮。憑借飛速提升的系統(tǒng)性能、不斷改善的屏幕精度和日益增加的電池壽命,移動(dòng)設(shè)備開(kāi)發(fā)商已經(jīng)坐擁創(chuàng)新的最佳平臺(tái)。

  增強(qiáng)現(xiàn)實(shí)(AR)可以充分挖掘并展現(xiàn)智能手機(jī)的強(qiáng)勁性能。AR的原理并不復(fù)雜,利用高級(jí)攝像頭捕捉圖像,經(jīng)過(guò)CPU、GPU、ISP、VPU和DPU,最后顯示在高清屏幕上。這個(gè)過(guò)程中,增強(qiáng)內(nèi)容將覆蓋實(shí)際影像。根據(jù)應(yīng)用目標(biāo)的不同,物體識(shí)別、方位補(bǔ)償(使用電子羅盤(pán)和/或加速度計(jì))或高級(jí)渲染技術(shù)都將各有用武之地。

  一些人氣移動(dòng)應(yīng)用讓AR不再遠(yuǎn)在天邊,并一舉進(jìn)軍大眾市場(chǎng),比如將濾鏡疊加在用戶臉部,然后生成圖片和視頻用于分享的Snapchat;以及讓用戶在真實(shí)地點(diǎn)看到動(dòng)畫(huà)人物的Pokemon Go。無(wú)獨(dú)有偶,還有一些應(yīng)用采取了更高級(jí)的AR技術(shù),比如將攝像頭捕捉與3D物體相結(jié)合。這些創(chuàng)新用例層出不窮,并可以用于包括零售和高端游戲在內(nèi)的各行各業(yè)。舉個(gè)例子,用戶可以使用移動(dòng)設(shè)備查看家具是否與硬裝搭配,家具巨頭宜家就打算在2017年發(fā)布AR產(chǎn)品目錄。

  虛擬現(xiàn)實(shí)已經(jīng)不算新理念了,但其核心技術(shù)卻仍在經(jīng)歷巨變。硬件設(shè)備已經(jīng)萬(wàn)事俱備,擁有足夠強(qiáng)大的性能運(yùn)行炫目的VR內(nèi)容;一個(gè)適合創(chuàng)新的大規(guī)模開(kāi)發(fā)商生態(tài)系統(tǒng)也已經(jīng)形成。這一點(diǎn)在移動(dòng)平臺(tái)的體現(xiàn)格外深刻,因?yàn)槿巳硕寄苡茫移湟苿?dòng)性自身便是重要優(yōu)勢(shì)。與臺(tái)式機(jī)和游戲機(jī)不同,移動(dòng)設(shè)備無(wú)拘無(wú)束。當(dāng)然,實(shí)現(xiàn)這一點(diǎn)需要在設(shè)備上安裝各類傳感器。實(shí)際上,VR領(lǐng)域的許多重大突破都是在移動(dòng)設(shè)備上實(shí)現(xiàn)的——利用VR技術(shù)增強(qiáng)用戶體驗(yàn)的云霄飛車就是高性能移動(dòng)應(yīng)用的一個(gè)典型案例。

  盡管推陳出新的顛覆式應(yīng)用不斷刷新智能手機(jī)的使用方式,但我們經(jīng)常會(huì)忘記一點(diǎn)現(xiàn)實(shí),最普遍的移動(dòng)應(yīng)用情景依然是網(wǎng)頁(yè)瀏覽和游戲。近幾年,屏幕分辨率和刷新率都得到提升,用戶界面(UI)的視覺(jué)效果和使用體驗(yàn)也越來(lái)越自然。這些優(yōu)化對(duì)GPU提出了更高要求,成為成本導(dǎo)向型市場(chǎng)不小的挑戰(zhàn)。

  移動(dòng)設(shè)備已經(jīng)成為最主要的游戲平臺(tái),由于移動(dòng)游戲的便捷性,玩家人數(shù)持續(xù)增加,并進(jìn)一步推動(dòng)游戲數(shù)量的上升。從免費(fèi)的獨(dú)立游戲到數(shù)百萬(wàn)美元投資的工作室游戲,現(xiàn)代玩家有豐富的游戲類型、價(jià)格和質(zhì)量等級(jí)可供選擇。隨著可選游戲數(shù)量的上升,視覺(jué)效果也得到顯著改善。GPU剛剛引入移動(dòng)設(shè)備時(shí),3D游戲簡(jiǎn)單粗暴,不堪入目。而現(xiàn)在呢?游戲畫(huà)面豐富多彩,景色怡人,動(dòng)態(tài)感十足,在上一代的手柄游戲機(jī)時(shí)代都是前所未聞的。

4.png

  上圖是ARM演示團(tuán)隊(duì)制作的三張示意圖。我們先來(lái)看看相對(duì)簡(jiǎn)單(以今天的標(biāo)準(zhǔn))的3D內(nèi)容,演示游戲?yàn)?010年推出的True Force,運(yùn)行于2011年款的Galaxy S2。每幀圖元16k,片段處理每像素時(shí)鐘周期3.7次,基于OpenGL ES 2.0。

  3年后的2013年,OpenGL ES 3.0正式推出,改善了GPU 對(duì)GPU運(yùn)算的支持(并不是OpenGL ES 3.0 API的主打特色,而隨OpenGL ES 3.1正式推出);允許開(kāi)發(fā)商使用更多高級(jí)渲染技術(shù)。結(jié)合基礎(chǔ)硬件后,視覺(jué)質(zhì)量顯著提升。將Trollheim演示與TrueForce比較一下便可一目了然,前者的復(fù)雜性比后者高了不少。TrueForce的每幀圖元為16k,而Trollheim為150k,TrueForce的片段處理每像素時(shí)鐘周期為3.7次,而Trollheim則為16次。

  2016年,Vulkan正式推出,API效率大幅提高,與OpenGL ES相比能夠以更低的開(kāi)銷幫助開(kāi)發(fā)商更好地發(fā)揮硬件性能。當(dāng)然,硬件本身也快速發(fā)展,比較一下Lofoten和Trollheim演示,我們即可清楚地看到復(fù)雜度的提升:每幀圖元提高了300%,片段復(fù)雜度提高了150%。

  智能手機(jī)設(shè)計(jì)的挑戰(zhàn)與趨勢(shì)

  使用場(chǎng)景的變化僅是一個(gè)方面,移動(dòng)設(shè)備本身也經(jīng)歷大幅升級(jí)。智能手機(jī)市場(chǎng)最初主打旗艦機(jī)型,隨著智能化程度的不斷提高,很多 PC特性已經(jīng)可以實(shí)現(xiàn),但通訊依舊是其主要功能。然而,過(guò)去短短幾年間,智能手機(jī)用途不斷擴(kuò)展,打電話已不再是智能手機(jī)的主要功能,圖像顯示成為了關(guān)注焦點(diǎn)。

  過(guò)去,手機(jī)電池壽命一般用單次充電支持的通話時(shí)長(zhǎng)來(lái)衡量,而現(xiàn)在的標(biāo)準(zhǔn)則是網(wǎng)絡(luò)瀏覽或高端游戲的續(xù)航時(shí)間。GPU與顯示性能一起備受關(guān)注。用戶希望體驗(yàn)更高質(zhì)量的視覺(jué)效果,到目前為止,這一目標(biāo)都是經(jīng)由智能手機(jī)設(shè)計(jì)改善,以及顯示內(nèi)容的美感和流暢性來(lái)實(shí)現(xiàn),一個(gè)證據(jù)就是屏幕邊框變得越來(lái)越窄。市場(chǎng)的大致趨勢(shì)是朝著屏幕包裹設(shè)備的方向發(fā)展,設(shè)計(jì)美感更多由UI而非硬件來(lái)實(shí)現(xiàn)。下圖中,我們可以看出屏幕占整個(gè)設(shè)備的比例不斷增加。這一趨勢(shì)在三星Galaxy S7 Edge等機(jī)型上體現(xiàn)得尤為明顯,已經(jīng)實(shí)現(xiàn)屏幕對(duì)設(shè)備的全包裹。

5.png

  除了打電話,現(xiàn)代智能手機(jī)還能提供極為豐富的功能,如郵件、社交媒體、導(dǎo)航定位、支付、瀏覽網(wǎng)頁(yè)、游戲、拍照和視頻等等。用戶在期待功能升級(jí)的同時(shí),也希望電池壽命不斷延長(zhǎng)。但是,即便使用當(dāng)前所有最先進(jìn)的技術(shù),智能手機(jī)的電池容量還是要不斷增大,具體變化趨勢(shì)見(jiàn)下圖。

6.png

  除了電池容量變大,智能手機(jī)還變得越來(lái)越薄。一些機(jī)型的厚度甚至已經(jīng)達(dá)到了7毫米以下,考慮到現(xiàn)代智能手機(jī)的技術(shù)含量,如此纖薄實(shí)在令人驚訝。

  這樣的發(fā)展方向并非完全沒(méi)有弊端。屏幕增大導(dǎo)致電池尺寸變大,機(jī)身變薄,設(shè)備散熱能力下降,因?yàn)槠聊坏纳嵝什蝗缃饘贆C(jī)身。此外,機(jī)身變薄后,用以散熱的表面積也會(huì)減少?,F(xiàn)代高端智能手機(jī)的性能上限很大程度上被散熱能力牽制,如何保證機(jī)身內(nèi)部元器件不因?yàn)楦邷囟軗p則因此成為另一大挑戰(zhàn)。

  現(xiàn)代智能手機(jī)裝有多種耗電發(fā)熱的核心元件,如攝像頭子系統(tǒng)、屏幕、調(diào)制解調(diào)器、Wi-Fi、非易失性存儲(chǔ)器、DRAM和主芯片本身(包括CPU、GPU和其他處理器)。因?yàn)榭偣囊恢?,所以其中任何一個(gè)元件功耗的減少,都可以增加其他元件可以使用的配額,這也是系統(tǒng)功耗配比由用例決定的原因。

  現(xiàn)代GPU非常復(fù)雜,嚴(yán)重依賴CPU運(yùn)行驅(qū)動(dòng)程序,以實(shí)現(xiàn)基于軟件與應(yīng)用程序進(jìn)行交互。多虧了Vulkan這樣的現(xiàn)代API,驅(qū)動(dòng)程序的開(kāi)銷下降了,但是CPU依然需要運(yùn)行驅(qū)動(dòng)程序,所以不能完全避免耗電。由于所有元件功耗預(yù)算共享,因此在CPU中使用的、用于GPU交互的功耗就是不能應(yīng)用于GPU本身的功耗。基于上述原因,降低CPU功耗勢(shì)在必行,不僅是為GPU發(fā)展掃清瓶頸,更是要為盡可能的提高GPU可用功耗鋪平道路。

  與之類似,在運(yùn)行復(fù)雜3D游戲的現(xiàn)代系統(tǒng)中,GPU會(huì)消耗大量DRAM帶寬。由于要處理大量數(shù)據(jù)(上述提及的Lofoten每幀處理600,000個(gè)三角),消耗帶寬責(zé)無(wú)旁貸,但DRAM的讀寫(xiě)本身就是耗電的過(guò)程,也需要占用系統(tǒng)的總功耗預(yù)算。減少DRAM帶寬可以降低其功耗,并用于其他元件。

  現(xiàn)代智能手機(jī)的設(shè)計(jì)和日益復(fù)雜的用例對(duì)GPU提出了前所未有的挑戰(zhàn)。下一章,我們將介紹ARM新一代GPU和GPU架構(gòu)是如何應(yīng)對(duì)這些挑戰(zhàn)的。

  為下一代設(shè)備打造的Mali-G71

  Mali-G71是ARM最新推出的高性能GPU,也是首款基于全新Bifrost架構(gòu)的GPU,性能和效率都獲得顯著提升。

7.png

  Mali-G71是迄今為止ARM性能最高的GPU。為滿足現(xiàn)代用例所需性能,著色器核心數(shù)量從1擴(kuò)展至32,幫助芯片制造商根據(jù)目標(biāo)市場(chǎng)自主權(quán)衡性能和功耗。出于這個(gè)原因,我們認(rèn)為Mali-G71將在各類應(yīng)用中將大展拳腳。

8.png

  如前文所述,智能手機(jī)的很多性能都受到散熱的限制,還有一些手機(jī)的限制因素則是成本,或者說(shuō)是芯片尺寸。為了實(shí)現(xiàn)更高性,Mali-G71和Bifrost架構(gòu)同時(shí)升級(jí)了能源效率(單位瓦特性能)和性能密度(單位芯片面積性能),幫助功耗與散熱性能遭遇挑戰(zhàn)的芯片制造商實(shí)現(xiàn)更高的GPU性能。相似條件下,Mali-G71的能源效率相較Mali-T880最多可提高20%,性能密度最多可提高40%。此外,外部存儲(chǔ)消耗的總帶寬降低20%,進(jìn)一步減少整體系統(tǒng)功耗。

9.png

  Bifrost架構(gòu)發(fā)展

  為了進(jìn)一步說(shuō)明Mali-G71為何具備遠(yuǎn)超歷代ARM GPU的性能,我們首先來(lái)探討一下GPU架構(gòu)本身,以及實(shí)現(xiàn)這些性能的設(shè)計(jì)方法。

  Bifrost是ARM的第三代可編程的GPU架構(gòu),其研發(fā)知識(shí)與經(jīng)驗(yàn)傳承自Utgard和Midgard GPU架構(gòu)。

10.png

  ARM的前兩代GPU架構(gòu)——Utgard和Midgard都取得了巨大成功。它們專為新興的移動(dòng)GPU市場(chǎng)打造,無(wú)論出貨量還是內(nèi)部科技的運(yùn)用都可圈可點(diǎn)。Utgard是ARM首款可編程GPU,支持GLES 2.x,片段著色器與頂點(diǎn)著色器相互獨(dú)立。Midgard則引入了統(tǒng)一著色器,支持GLES 3.x,并可與OpenCL 1.x Full Profile協(xié)同實(shí)現(xiàn)GPGPU運(yùn)算。Midgard是一款前瞻性的GPU架構(gòu),甚至包括了一些可以支持Vulkan的功能特性??紤]到這是5年前設(shè)計(jì)的架構(gòu),就足以成為了不起的成就。

  然而,隨著內(nèi)容和用例的改變,架構(gòu)本身也必須進(jìn)行根本性的升級(jí),以適應(yīng)各類下一代用例。

11.png

  從頂層設(shè)計(jì)看,與Midgard架構(gòu)相比,Bifrost的GPU內(nèi)核沒(méi)有明顯變化。表面上依然包括多個(gè)可擴(kuò)展的著色器核心、一個(gè)負(fù)責(zé)與驅(qū)動(dòng)程序交互的任務(wù)管理器、一個(gè)負(fù)責(zé)處理內(nèi)存頁(yè)表的MMU以及一個(gè)tiler(Bifrost 仍然是一個(gè) Tile based 渲染架構(gòu)),但全部模塊都獲得了顯著提升。

  通過(guò)AMBA ACE或AXI-Lite與外界交互的L2子系統(tǒng)為支持AMBA 4 ACE專門設(shè)計(jì),幫助Mali-G71徹底實(shí)現(xiàn)硬件一致性,并在GPU和CPU等其他單元之間實(shí)現(xiàn)了基于硬件的細(xì)粒數(shù)據(jù)透明共享。

  我們對(duì)tiler做了重新設(shè)計(jì),以支持一種全新的渲染流,即索引驅(qū)動(dòng)的位置渲染。該技術(shù)的理念是將頂點(diǎn)著色分為兩部分以節(jié)省帶寬,因?yàn)闊o(wú)需讀寫(xiě)屏幕上看不見(jiàn)的變化參數(shù)(varying)1;而且由于無(wú)需寫(xiě)回不可見(jiàn)位置,帶寬可以得到進(jìn)一步節(jié)省。

  著色器核心本身的變化更為巨大。ARM在Bifrost中引入全新指令集,根據(jù)大量的內(nèi)容和趨勢(shì)分析以及長(zhǎng)年的行業(yè)經(jīng)驗(yàn)開(kāi)發(fā)?,F(xiàn)代GPU的總體趨勢(shì)是執(zhí)行越來(lái)越多的復(fù)雜可編程著色器,通常通過(guò)算法完成并采用大量標(biāo)量代碼。作為全新引擎的一部分,Bifrost采用全新的算法單元,以極高的效率執(zhí)行高級(jí)著色器核心。它們更容易擴(kuò)展,如果未來(lái)需求有增加,該架構(gòu)也可以輕松應(yīng)對(duì)。

  Bifrost的屬性(attribute)單元和變化參數(shù)單元相互獨(dú)立,這些操作在圖形處理中極為普遍,使用獨(dú)立的高度優(yōu)化硬件模塊更為合理。全新的指令集引入高效的四線程組以節(jié)省控制邏輯,并通過(guò)四線程組管理器將線程組切換至執(zhí)行引擎。我們還加入了一個(gè)控制架構(gòu)以提高物理利用率。如上文所述,此特性對(duì)現(xiàn)代工藝節(jié)點(diǎn)非常重要。

  Bifrost引入了名為子句著色器的概念,專門用于處理執(zhí)行引擎內(nèi)部的布線密度問(wèn)題。你可以將子句想象成一組連續(xù)自動(dòng)執(zhí)行的指令,也就是說(shuō),一個(gè)子句的執(zhí)行不能被中斷,無(wú)論是分支(如分支只發(fā)生在子句邊界上)還是其他任何事件都無(wú)法中斷。這意味著子句是可以預(yù)測(cè)的,數(shù)據(jù)路徑周圍的控制邏輯變得更容易。比如說(shuō),你無(wú)需在子句內(nèi)部更新程序計(jì)數(shù)器,因?yàn)镚PU知道它會(huì)在執(zhí)行前(或執(zhí)行后)根據(jù)子句內(nèi)部的指令數(shù)量向前推進(jìn)。

  對(duì)CPU而言,這一行為并不可取,因?yàn)镃PU必須迅速處理分支,而且分支的出現(xiàn)并不偶然。但恰恰相反,對(duì)GPU而言,該技術(shù)又可以進(jìn)一步優(yōu)化設(shè)計(jì)。請(qǐng)想象一組指令集正在經(jīng)過(guò)。連續(xù)的指令經(jīng)常使用上一條指令作為輸入(見(jiàn)下方一排中的多個(gè)ADD正在積累數(shù)據(jù))。如果你經(jīng)常觀察到這一現(xiàn)象,而且你知道訪問(wèn)暫存器組的代價(jià)非常高昂(因?yàn)檫@是一個(gè)巨大的存儲(chǔ)模塊),有一種方法來(lái)緩解這個(gè)問(wèn)題,那就是巧妙地使用臨時(shí)寄存器來(lái)減少寄存器組的訪問(wèn)量。由于寄存器是臨時(shí)的,數(shù)據(jù)只會(huì)在一個(gè)時(shí)鐘周期中保留,所以要想實(shí)現(xiàn),子句必須確保在子句內(nèi)部原子執(zhí)行。

  請(qǐng)參考下圖的簡(jiǎn)單著色器程序,從指令集的角度了解子句著色器的工作原理。需要指出的是,這是開(kāi)發(fā)者所看不到的,由編譯器完成的。

16.png

  總結(jié)

  通過(guò)對(duì)Bifrost架構(gòu)如何提高效率和性能的詳細(xì)解讀,我們可以清楚地了解Mali-G71具備哪些根本性的創(chuàng)新技術(shù),以實(shí)現(xiàn)萬(wàn)眾期待的GPU性能升級(jí)。通過(guò)支持全新的現(xiàn)代API(如Vulkan和OpenCL 2.0),Mali-G71有助于實(shí)現(xiàn)出色的新興應(yīng)用場(chǎng)景體驗(yàn)。ARM將繼續(xù)研發(fā)Bifrost架構(gòu),滿足下一代內(nèi)容的需求并超越行業(yè)期待。2016年,更多新技術(shù)將現(xiàn)身ARM Mali 多媒體組件。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。