在基礎技術與市場應用布局之後,我們來了解 ARM 在 GPU 市場的規劃。

2016 年已經公認是 VR 元年,各家 VR 方案傾巢而出,然而目前在應用生態方面,只有 PC 平台和遊樂器平台稱得上已經相當完整,在行動平台上,雖然早先有 Samsung GearVR 以及 Google Cardbaord VR,現在再加上 Google 前陣子在 I/O 宣布的 Daydream 平台,顯示不少廠商開始依照相關規範布局 VR 產品,但軟體應用的缺乏仍是 VR 在行動裝置上發展的最大限制。

1

目前手機平台上雖有不少號稱支援 VR 的遊戲應用推出,但礙於既有手機處器架構的限制,不論在畫面複雜度,或者是最重要的延遲表現上,都還離完美有段不小的距離。由於行動平台上的功耗、溫度限制,大部分的時候手機都無法全速發揮,甚至會因為處理器為了控制發熱,導致時脈在快慢之間不斷的切換,只要遊戲時間稍長,就容易有 3D 畫面不順暢的狀況發生。

這種狀況在所有的行動處理器平台上都會發生,即便是目前最強的 Apple 以及 Qualcomm 平台,也都避免不了。所以目前手機,或其他基於 ARM 平台上的 VR 裝置,多半都被設定為影片串流觀賞之用,而相關 VR 內容也多以影片為主,因為幾乎所有的 ARM 應用處理器都會內建相關的硬體影片編解碼電路,不論是立體電影,或者是 360 度影片的運算負載,相對起遊戲所用的 3D 繪圖都要輕微許多。

綜合以上原因,目前基於 ARM 平台開發的 VR 3D 遊戲,在畫面與流暢度方面和 PC 與遊樂器平台相較之下,都還是有相當大的差距。也因為這些硬體性能限制,遊戲開發商為考量最大的平台支援及流暢性,而主動降低畫面複雜度也是造成體驗落差的原因之一。

PC 平台上,GPU 技術的發展是帶動整體 VR 應用環境前進的最大動力,流暢已經是基本要求,畫質更是要向真實世界看齊,而 NVIDIA 和 AMD 在 2016 年所推出基於新製程的繪圖架構,在效能取得大幅成長,相當程度降低 VR 環境中可能遭遇的性能瓶頸,開發者也更能放開手腳改善畫面細緻度表現,同時也能兼顧流暢度,避免造成常見的 VR 頭暈症狀。

在遊樂器平台上的 VR 環境,GPU 技術的演進更是重要,舉例來說,Sony 為強化自家 VR 生態應用體驗,將推出 GPU 大幅強化後的新版 PS4,也是著眼於 VR 體驗必須要依靠強大的繪圖能力輔助才有辦法實現。

VR 不該只是單方面的串流觀賞工具,而是應該作為連接虛擬世界的通道,然而要做出說服力足夠的虛擬世界,穩定、效率高,且功耗控制能力強的 GPU 表現就非常重要,在 ARM 平台上更是如此。ARM 新發表的 Mali-G71,也就是在這個概念之下所開發的新架構。

當然,除了 ARM 的本家 GPU 架構外,其平台上各家競爭者的 GPU 架構其實都同樣不斷的演進,PowerVR 架構與 Apple 的合作更為緊密,其新版高階核心將幫助 Apple 進入 VR 應用領域;Qualcomm 和 ARM 都因為 Samsung 推出 GearVR 產品,二者都與 Oculus 有了進一步的合作,在其最高階繪圖架構上皆針對 VR 應用進行最佳化設計,而 Samsung 的 GearVR 也成為目前基於 ARM 架構下,VR 效果表現最佳的平台。

而值得注意的是,ARM 與 Qualcomm 透過與 Oculus 的合作,取得基於 OpenGL 標準下的 Multi view 這個擴充 API 功能的支援。

Multi View 技術其實概念很簡單:傳統 VR 的立體 3D 環境繪圖方式,必須要針對左右眼的不同視角,照順序各畫一次,因此驅動程式就必須重複執行相關指令,造成運算資源的浪費(Overhead),而支援 Multi View 技術之後,透過類似查表的方式,GPU 可以在一個指令循環內完成左右眼不同視角的繪製,所以更省運算資源,而根據相關技術規格書的說法,採用此技術最多可節省達 3 ~ 4 成左右的硬體運算資源,對 VR 環境下的整體繪圖性能有極大的幫助。可以說,透過此技術,讓行動平台上進行高畫質VR應用成為可能。

理論上現有 GPU 也可支援 Multi View 這個技術,但為了更加完美的執行這個功能,硬體上也要有相對的改良。目前可確定的是, Mali-G71 將是在行動平台中,首個完整從硬體功能支援 Multi View 的方案。目前 Qualcomm 支援此擴充 API 的繪圖架構還未宣布,而 ARM 則是搶先於 Computex 宣布了 Mali-G71 此完整支援 Multi View 技術的繪圖架構,預計 2016 年底就會有晶片方案推出,領先 Qualcomm 及其他繪圖架構。

Mali-G71 基於全新的 Bifrost 架構,與過去的 Midgart 架構相較之下,雖同樣是基於 Unified Shader 核心,但藉由精簡了部份指令處理流程,並且增加了針對高階 3D 繪圖,以及 GPGPU 相關運算的處理能力,支援最新的 Vulkan 1.0 與 OpenCL 2.0 API,支援共享虛擬記憶體,完全符合 HSA 標準,可與 CPU 搭配處理通用運算。

2

Bifrost 架構完整支援了 Vulkan 繪圖 API ,此 API 在底層部份進行相當大的精簡,避免驅動程式介入過深,影響了整體繪圖效能,同時也給應用開發者更大的彈性來取用相關運算資源。

3

架構更有效率也是 Bifrost 一大特色。晶片的面積能效比遠高於前代,而在繪圖核心的重新設計,也大幅增加指令集的處理效率,避免空迴圈的狀況,另外,透過架構的最佳化,也大幅節省了記憶體頻寬的使用,對於未來高畫質 3D 或 VR 內容的開發,有著極大的幫助。

4

另一特色是採用全新的 Quard based 向量運算技術,一次可處理最多達四個執行緒,而即便遇到運算指令中並非四個執行緒一組的向量指令,也能夠動態切割分配相關的向量執行單元,不需等待指令集填滿運算單元才能執行運算動作,減少了等待的狀態。

5

另外一個架構上的特色,則是稱為 Clause Execution 技術,執行單元不需要在每個計算程序中都要存取暫存器,而是可以繞過,直接在最後階段加總,指令執行之間的延遲可以大幅減少,所需的暫存器也可以減少,除了增加整體運算效率,也避免了晶片架構的肥大與功耗的增加。

6

另外在核心運算單元中,乘法器與加法器分開設計,各有四組32位元配置,此亦有助於降低運算單元的複雜度,增加處理單元本身的效率。

7

至於在著色器的設計上,透過查表最佳化的設計,降低著色器對記憶體頻寬的依賴,這也是 Mali-G71 之所以能夠完全發揮 Multi View 技術優勢的關鍵所在。透過此技術,最多可減少 30% 對系統頻寬的佔用。

8

透過以上的技術整合,G71 相較起前代的 Mali 系列,在能源效率上增強了 20%,同時也降低了多餘處理迴圈造成的廢熱問題,每單位電晶體密度所能提供的效能增加了 40%,頻寬利用效率也能增加 20%,重點是,相較起前代最多只能整合 16 個核心,新的 Mali-G71 一舉增加到 32 個核心配置能力,全規格的 G71 的能效表現甚至有機會與主流 PC 獨立 GPU 一較高下。

9

而雖然 ARM 官方推薦與 Cortex-A73 搭配,並在 10nm 製程下可達到最佳效率,事實上 10nm 相較於目前的 16nm,最大的差別在晶片面積的大小,性能上差別較小,因此首款 A73 + G71 的晶片方案將可能是基於 16nm 製程的產品,同時滿足成本與效能表現,而真正的 10nm 方案,則是預計在 2017 年才會現身,屆時將有機會見到整合更大規模的 Mali-G71 核心,挑戰真正的桌面級 3D 性能表現。

藉由 Mali-G71 的導入,我們將有機會看到行動終端上更豐富的 VR 應用,畢竟若硬體不夠力,軟體開發商也不會冒險推出品質無法被消費者接受的產品,當軟硬體能夠互相配合,那麼整體生態也會更快成熟。

當然,2017 年我們也預期同樣可以看到 Qualcomm 及其他公司在 ARM 平台上推出更適合 VR 環境應用的繪圖架構,在此良性競爭之下,行動平台上的 VR 生態也將更完整。

 

延伸閱讀:2016 年 ARM 架構與應用生態專題 – 基礎技術與市場應用布局