GPU爆炸式發(fā)展的背后及未來挑戰(zhàn)趨勢
移動設備已經成為最主要的游戲平臺,由于移動游戲的便捷性,玩家人數(shù)持續(xù)增加,并進一步推動游戲數(shù)量的上升。從免費的獨立游戲到數(shù)百萬美元投資的工作室游戲,現(xiàn)代玩家有豐富的游戲類型、價格和質量等級可供選擇。隨著可選游戲數(shù)量的上升,視覺效果也得到顯著改善。GPU剛剛引入移動設備時,3D游戲簡單粗暴,不堪入目。而現(xiàn)在呢?游戲畫面豐富多彩,景色怡人,動態(tài)感十足,在上一代的手柄游戲機時代都是前所未聞的。
本文引用地址:http://2s4d.com/article/201701/343150.htm上圖是ARM演示團隊制作的三張示意圖。我們先來看看相對簡單(以今天的標準)的3D內容,演示游戲為2010年推出的True Force,運行于2011年款的Galaxy S2。每幀圖元16k,片段處理每像素時鐘周期3.7次,基于OpenGL ES 2.0。
3年后的2013年,OpenGL ES 3.0正式推出,改善了GPU 對GPU運算的支持(并不是OpenGL ES 3.0 API的主打特色,而隨OpenGL ES 3.1正式推出);允許開發(fā)商使用更多高級渲染技術。結合基礎硬件后,視覺質量顯著提升。將Trollheim演示與TrueForce比較一下便可一目了然,前者的復雜性比后者高了不少。TrueForce的每幀圖元為16k,而Trollheim為150k,TrueForce的片段處理每像素時鐘周期為3.7次,而Trollheim則為16次。
2016年,Vulkan正式推出,API效率大幅提高,與OpenGL ES相比能夠以更低的開銷幫助開發(fā)商更好地發(fā)揮硬件性能。當然,硬件本身也快速發(fā)展,比較一下Lofoten和Trollheim演示,我們即可清楚地看到復雜度的提升:每幀圖元提高了300%,片段復雜度提高了150%。
智能手機設計的挑戰(zhàn)與趨勢
使用場景的變化僅是一個方面,移動設備本身也經歷大幅升級。智能手機市場最初主打旗艦機型,隨著智能化程度的不斷提高,很多 PC特性已經可以實現(xiàn),但通訊依舊是其主要功能。然而,過去短短幾年間,智能手機用途不斷擴展,打電話已不再是智能手機的主要功能,圖像顯示成為了關注焦點。
過去,手機電池壽命一般用單次充電支持的通話時長來衡量,而現(xiàn)在的標準則是網絡瀏覽或高端游戲的續(xù)航時間,GPU與顯示性能一起備受關注。用戶希望體驗更高質量的視覺效果,到目前為止,這一目標都是經由智能手機設計改善,以及顯示內容的美感和流暢性來實現(xiàn),一個證據(jù)就是屏幕邊框變得越來越窄。市場的大致趨勢是朝著屏幕包裹設備的方向發(fā)展,設計美感更多由UI而非硬件來實現(xiàn)。下圖中,我們可以看出屏幕占整個設備的比例不斷增加。這一趨勢在三星Galaxy S7 Edge等機型上體現(xiàn)得尤為明顯,已經實現(xiàn)屏幕對設備的全包裹。
除了打電話,現(xiàn)代智能手機還能提供極為豐富的功能,如郵件、社交媒體、導航定位、支付、瀏覽網頁、游戲、拍照和視頻等等。用戶在期待功能升級的同時,也希望電池壽命不斷延長。但是,即便使用當前所有最先進的技術,智能手機的電池容量還是要不斷增大,具體變化趨勢見下圖。
除了電池容量變大,智能手機還變得越來越薄。一些機型的厚度甚至已經達到了7毫米以下,考慮到現(xiàn)代智能手機的技術含量,如此纖薄實在令人驚訝。
這樣的發(fā)展方向并非完全沒有弊端。屏幕增大導致電池尺寸變大,機身變薄,設備散熱能力下降,因為屏幕的散熱效率不如金屬機身。此外,機身變薄后,用以散熱的表面積也會減少?,F(xiàn)代高端智能手機的性能上限很大程度上被散熱能力牽制,如何保證機身內部元器件不因為高溫而受損則因此成為另一大挑戰(zhàn)。
現(xiàn)代智能手機裝有多種耗電發(fā)熱的核心元件,如攝像頭子系統(tǒng)、屏幕、調制解調器、Wi-Fi、非易失性存儲器、DRAM和主芯片本身(包括CPU、GPU和其他處理器)。因為總功耗一致,所以其中任何一個元件功耗的減少,都可以增加其他元件可以使用的配額,這也是系統(tǒng)功耗配比由用例決定的原因。
現(xiàn)代GPU非常復雜,嚴重依賴CPU運行驅動程序,以實現(xiàn)基于軟件與應用程序進行交互。多虧了Vulkan這樣的現(xiàn)代API,驅動程序的開銷下降了,但是CPU依然需要運行驅動程序,所以不能完全避免耗電。由于所有元件功耗預算共享,因此在CPU中使用的、用于GPU交互的功耗就是不能應用于GPU本身的功耗?;谏鲜鲈颍档虲PU功耗勢在必行,不僅是為GPU發(fā)展掃清瓶頸,更是要為盡可能的提高GPU可用功耗鋪平道路。
與之類似,在運行復雜3D游戲的現(xiàn)代系統(tǒng)中,GPU會消耗大量DRAM帶寬。由于要處理大量數(shù)據(jù)(上述提及的Lofoten每幀處理600,000個三角),消耗帶寬責無旁貸,但DRAM的讀寫本身就是耗電的過程,也需要占用系統(tǒng)的總功耗預算。減少DRAM帶寬可以降低其功耗,并用于其他元件。
評論