NVIDIA GeForce GTX 1080 效能顯著提升秘辛與新技術分享

GTX_1080_KV_1462594232

今年 NVIDIA 又帶給玩家不小的震撼,新登場的 Pascal 世代,搭載著完整 GP104 核心的 GeForce GTX 1080 顯示卡,一登板就比下上代 Maxwell 卡王 TITAN X,這消息一出更讓不少玩家為之驚嘆,此外在 Pascal 世代 NVIDIA 又推出了眾多新技術,像是 ANSEL、同步多重投影(SMP)、HDR Display、Fast Sync、高速 SLI 橋接器與 GPU Boost 3.0,這些眾多技術都與 GTX 1080 的超群效能密不可分,因此在實際借到 NVIDIA GeForce GTX 1080 顯示卡之前,就先來預習 Pascal 世代的架構與嶄新技術分享。

 

Founders Edition 就是獨一無二創始卡

今年 NVIDIA CEO 黃仁勳先生,在公布 GTX 1080 顯示卡的售價時,共有兩個版本:$599 MSRP 與 $699 Founders Edlition,而如今 Founders Edlition 代表著由 NVIDIA 所打造的該世代第一張顯示卡。在過往,每當 NVIDIA 推出新的 GPU 時,會連帶推出 NVIDIA 的公版卡,而玩家與品牌商們,便把公版卡當作基準卡來比較。

但現在,NVIDIA 告訴大家 Founders Edition 創始卡是獨一無二,由 NVIDIA 精心打造,有著壓鑄鋁金屬外殼與沉穩背蓋,散熱方面更有先進 Vapor Chamber 散熱模組,搭配前置的鼓風扇,將熱氣完全排出機身之外。GTX 1080 Founders Edition 一樣會交由品牌商進行販售,但品牌商不得對 Founders Edition 進行任何的修改。

他不是被用來比較的公版,他是獨一無二的創始卡 Founders Edition。會有這樣的舉動,莫過於以往 NVIDIA 都是以販售 GPU 為主,並較少使用自身品牌去推廣顯示卡,如今 Founders Edition 問世,他將帶起新一世代的浪潮,迎著浪直到下一世代的誕生。

GeForce_GTX_1080_Front_1463236690
↑ GTX 1080 外觀。

 

GeForce_GTX_1080_Front_Thermal_1463236673
↑ 內部散熱鰭片設計。

 

GeForce_GTX_1080_Front_PCB_1463236682
↑ PCB 板設計。

 

GeForce GTX 1080 GPU 架構 – 效能秘辛

GTX 1080 之所以能在效能與功耗上突飛猛進,不外乎與:16nm FinFET 製程、Pascal 架構、GDDR5X 記憶體、精心調教、記憶體壓縮與 SMP…等技術有關。GP104 GPU 是首顆使用 16nm FinFET 製程打造的 GPU,由晶圓製程的提升,可以讓同面積的晶片,裝進更多的電晶體,提高時脈更大幅優化功耗表現。

而新的 Pascal 架構,由 4 組 GPC 所組成,每組 GPC 內有著 5 組 TPC 包含著 PolyMorph Engine 與 一組 SM 單元,並有著 8 顆記憶體控制器;此外 NVIDIA 在發表會中特別介紹的 Simultaneous Multi-projection(SMP) 技術,此 SMP 單元包含在 PolyMorph Engine 當中,意味這 SMP 新技術為 Pascal 世代獨有,至於 SMP 的威力稍帶一會再來詳細介紹。

完整的 GP104 GPU 有著 7.2 億顆電晶體,GPU 時脈預設 1.61 GHz、Turbo 可達 1.73 GHz boost,其中 GP104 GPU 當中總計有著 20 組的 SM 單元,每一組 SM 單元有著 128 個核心,因此 CUDA 核心高達 2560 個,並有著 20 個幾何單元、160 個紋理單元、64 ROP 單元…等;在技術說明會上,有特別提到 GTX 1070 的核心由 3 組 GPC 所組成,換言之 GTX 1070 CUDA 核心數量為 1920 個。

nvidia-gtx-1080-p1
↑ Pascal GP104 GPU 架構圖。

 

nvidia-gtx-1080-p2
↑ SM 單元架構圖。

 

nvidia-gtx-1080-p3
↑ GTX 1080 與 GTX 980 核心規格比較。

 

當然 GTX 1080 GPU 的效能大躍進,不單只是使用 16nm FinFET、Pascal 架構就能辦到,據說 Pascal 原始 Boost 時脈僅 1325 MHz,經過無數次的線路優化與調教,才將 Boost 時脈拉到 1733 MHz 的境界,且從 GTX 1080 的板子供電設計來看,其有著更大的超頻空間,留帶品牌廠商進行大幅度的優化與效能調教。

nvidia-gtx-1080-p4
↑ Boost 時脈的調教。

 

記憶體方面 GTX 1080 搭載著 8GB GDDR5X 記憶體,GDDR5X 有著相當大的頻寬,可達到 10 GBPS 的資料速率,NVIDIA 記憶體工程師,為了讓 GDDR5X 發揮出超高速率,對於 I/O 電路與 layout 進行改進與優化,不僅讓 GDDR5X 記憶體可工作在 10 GBPS 的資料速率下,更對於未來產品使用 GDDR5X 記憶體有著莫大助益。

nvidia-gtx-1080-p5
↑ NVIDIA 提到 GDDR5X 記憶體,也是經過無數次的線路優化,才能達到 10 GHz 的速率。

 

與先前的 GPU 相同,Pascal 同樣也使用了記憶體壓縮技術,能有效的降低記憶體頻寬需求,透過更先快速的壓縮技術,將資料從記憶體送進 GPU 進行運算,藉此增加運行效能。除了增強原有的 2:1 壓縮模式之外,更新增了 4:1 與 8:1 壓縮技術;直接從 Project CARS 的遊戲截圖來看,第一張是遊戲原圖,接著第二張是使用 Maxwell GPU 進行壓縮,圖中粉紅色區域的資料代表可壓縮,而最後換上 Pascal GPU 進行壓縮,畫面中超過 80% 都能進行壓縮,也因此 GTX 1080 與 GTX 980相比,GTX 1080 在記憶體頻寬上有著 1.4 倍提升、壓縮效率有 1.2 倍提升,整體記憶體平寬效益有著 1.7 倍提升,這也是為何 GTX 1080 初登板就穩坐卡王寶座的原因。

nvidia-gtx-1080-p6
↑ 新的記憶體壓縮模式。

 

nvidia-gtx-1080-p7
↑ Project CARS 原始遊戲畫面。

 

nvidia-gtx-1080-p8
↑ Maxwell GPU 進行壓縮,後粉紅色為可壓縮之資料。

 

nvidia-gtx-1080-p9
↑ Pascal GPU 進行壓縮。

 

Simultaneous Multi-projection(SMP)同步多重投影

在發表會時,NVIDIA CEO 黃仁勳先生花了不少時間,解釋並展示 Simultaneous Multi-projection(SMP)此技術,便證明了這項技術,對於 Pascal 與未來的 GPU 產品來說相當重要;技術文件當中更以「SMP:Design for the New Display Revolution」當作開頭,在以往 3D 繪圖,都是假設一個單一且平面的顯示螢幕,但在技術的成長與新技術的誕生,像是三螢幕環繞、曲面螢幕,以及 VR 頭戴顯示器,這代表著現在使用者,不再只是使用單一平面的電腦螢幕,倘若又在使用單一 Viewpoint 的概念去繪圖,實在不夠精準且浪費 GPU 效能。

SMP 屬於硬體單元,存在於 PolyMorph Engine 當中,最高能達到 16 個 Viewpoint 搭配 2 個不同的投影中心;用例子來舉例肯定會比較容易了解,不知道各位是否都使用過,以三台平面螢幕建立的 NVIDIA Surround 的遊戲環境,在 3D 繪圖過程中往往會破壞左右螢幕的比例,造成畫面被拉長、比例被破壞的影像;造成影像被拉長的主因,就是因為這三台螢幕依據擺放的角度,其中央點位置出現錯誤,GPU 認為這三台螢幕僅是一個平面螢幕,造成繪圖時出現偏差。

而透過 SMP 可以將這三台螢幕當作三個獨立 Viewpoint,並指著同一個中央點,且只要一次的渲染動作,就能繪製出 3 Viewpoint x 一個中央點的影像,最終渲染的結果正式完美的環繞影像。簡單來說,SMP 對於三螢幕玩家與 VR 開發者,有著莫大的助益,而單一平面螢幕的使用情境,較難發現 SMP 獨到之處,在未來 GTX 1080 開啟 SMP 功能時,應該會在 NVIDIA 控制面板當中,讓玩家自行調整三螢幕的擺放位置與環繞效果。

nvidia-gtx-1080-p10
↑ 現在顯示不再單單只是一個平面螢幕而已。

 

nvidia-gtx-1080-p11
↑ SMP 存在於 GPU 硬體單元當中。

 

nvidia-gtx-1080-p12
↑ 以往三螢幕使用時,因為三螢幕成為一個 View Port 的關係,左右兩個畫面因此比例出現錯誤。

 

nvidia-gtx-1080-p13
↑ 透過 SMP 的多重投影,將三個螢幕的 View Port 與中心點校正後,所產生的影像就不再有變形的問題。

 

此外各位可記得,GTX 1080 在 VR 應用上效能有著飛躍的進步,這正是利用 SMP 針對 VR 情境,所衍伸出的兩個技術:Single Pass Stereo 與 Lens Matched Shading。

Single Pass Stereo 利用 SMP 建立兩個 Viewpoint,與左右眼兩個獨立的視覺中心,讓 GPU 只需繪製一次 3D 圖形,就能將影像投影在兩個獨立視覺中心的 Viewpoint 上;以往 VR 繪圖時,GPU 需先繪製左眼 3D 圖形,接著將左 3D 圖形顯示在左眼,接下來再繪製右眼 3D 圖形,然後在右眼上顯示,無疑是兩次功的時間。

Lens Matched Shading 則是依據 VR 頭戴顯示器,其顯示可成像畫面進行修正,以往對 VR 進行繪圖,都是繪製一張超過 VR 顯示器可呈現的畫面,因此在邊角上的繪製只會是浪費 GPU 效能,因為實際上邊角的影像是看不到的;Lens Matched Shading 可以依據 VR 頭戴顯示器,其可呈現影像範圍,繪製剛剛好的影像,藉此減少所需繪製影像提升效能,讓 VR 體驗有著 2 倍效能提升。

nvidia-gtx-1080-p14
↑ 左為 Lens Matched Shading,可降低像素運算量,而右邊為 Single Pass Stereo,只需繪製一次 3D 圖形,即可投射在左、右眼中產生 VR 影像。

 

日漸重要的 Async Compute 與 Preemption

自從微軟 DirectX 12 API出現之後,Async Compute 一詞就不斷出現,Async Compute 用意是讓遊戲開發者,能更有效的利用 GPU 進行平行運算,現今主流的 3A 大作遊戲,有著複雜的特效、陰影、光線、人工智慧、物理模擬與透鏡…等諸多效果,在以往 Maxwell 世代的 GPU,會靜態分配 GPU 的運算能力,讓不同的工作得以同時間運算,但是當負載不平衡時,例如「繪圖」用了極短的時間完成工作,但相對的「運算」需要更多的效能來完成,但因為是靜態分配資源的關係,就算有閒置的 GPU 效能,也不法分配給「運算」來使用。

針對這種混和工作 Workload,Pascal 使用「Dynamic Load Balancing」技術,也就是說可動態分配 GPU 資源給需要的 Workload,而不會造成過多的資源閒置,而降低 GPU 的運算吞吐量。

nvidia-gtx-1080-p15
↑ Dynamic Load Balancing,在相同時間下運行繪圖與運算,明明繪圖已完成,有閒置的 GPU 效能,卻因為靜態分配的關係,無法再分配給運算單元使用;而動態分配的好處即是,可隨時改變 GPU 的資源分配,讓 GPU 的資源更有效的使用。

 

除了混和工作 Workload 之外,另一種情況是有著極高優先權的工作,被丟到 Command Pushbuffer 當中,但這時 GPU 卻還在處理上一個指令的大量圖形資料,這時傳統 GPU 只能等待目前工作到一個可中斷點時,才能進行 Context Switching 的指令;為了解決這問題,在 Pascal GPU 當中提供了三種層級的 Preemption 操作:Pixel Level、Thread Level 與 Instruction Level 中斷。

當目前 Command Pushbuffer 中正在執行圖形的繪製時,若點陣化的像素只繪製到一半時,當收到優先權較高的指令時,會中斷目前指令並且記錄下目前工作階段,在 Pixel Level 中斷的交換工作僅需 <100μs 的時間即可完成,等待新的指令執行完畢後,會在繼續之前暫停的指令。

而 Thread Level 中斷與 Pixel Level 中斷非常相似,利用 GPU 進行運算有著非常多的 GRID 與 Block,每個 GRID 當中有著非常多的 “threads” 需要運算,但當有中斷指令進來時,會先將目前執行的 thread 處理完畢,並將未執行的 thread 狀態記錄下來,讓 GPU 可以進行 Context Switching。

Instruction Level 中斷則是 Thread Level 的進階版,此指令會停止所有 thread 運算,並記錄下目前指令位置與暫存資料,而 Instruction 中斷僅提供給運行 CUDA 的程式所使用;就目前網路上查到的 GTX 1080 運行 DX12 遊戲的效能表現,確實比起 GTX 980 還要好上許多,至於究竟好到多少,就留待收到顯示卡時,在進行 DX12 遊戲來比較。

nvidia-gtx-1080-p16

nvidia-gtx-1080-p17

nvidia-gtx-1080-p18

 

Anesl 遊戲相機

現在遊戲世界的細膩程度、光影刻劃與藝術呈現,往往會令人嘆為觀止,每當玩家想捕捉這絢爛畫面時,卻只能按下 PrintScreen 按鈕,拍出一張由遊戲視角所見的畫面。若想要更好的構圖在以往遊戲中,除非遊戲支援 Free Camera 與拍照功能才行,而現在由 NVIDIA 所推出的「Anesl 遊戲相機」,結合了遊戲開發商與驅動程式,讓 Anesl 遊戲相機有著幾大特點:Free Camera、濾鏡、HDR、超解析度與 360 度環景建立。

簡單來說,凡是支援 Anesl 技術的遊戲,可以允許玩家在遊戲中進行暫停,並取得 Free Camera 的操作功能,且在畫面左方會出現 Anesl 的調整功能,可以自行對畫面添加濾鏡、HDR…等特效,更重要的是最高能夠以目前解析度的 32 倍,進行重製繪圖得到超高解析度的遊戲影像,除此之外還能利用 Anesl 將遊戲畫面變成 360 度環景影片,再透過 VR 設備進行觀看,並且支援 Android 手機播放遊戲環景影片。

超高解析度可得到 4.5 Gigapixel 的影像,可以輸出成 38″x 8″、100 DPI 的印刷品,其影像檔案莫約 1.5 GB 容量;筆者自身非常想試試 Anesl 遊戲相機的能力,且這功能並非 Pascal 獨佔,未來只要是 NVIDIA 的顯示卡,並有支援 Anesl 的遊戲都能使用,期待 Anesl 開放的那天,筆者肯定率先開啟巫師3來試試。

nvidia-gtx-1080-p19
↑ Anesl 存在於遊戲支援與驅動之間。

 

nvidia-gtx-1080-p21
↑ 透過陣列式倍數重繪法,讓遊戲產生出高於螢幕解析度數倍的影像。

 

Fast Sync 高速垂直同步

此次的 Pascal 世代當中,還提到了一項新的垂直同步技術「Fast Sync」,Fast Sync 主要提供給需要高 FPS 更新的玩家使用,例如 CS:GO 這類型的射擊遊戲,會要求較高的 FPS 表現,但若開啟一般的垂直同步,會降低 GPU FPS 輸出,雖說彌補了畫面撕裂的問題,但也造就了畫面延遲、抖動的問題,對於 CS:GO 玩家來說,寧願把垂直同步關掉,忍受畫面撕裂但毫無延遲的遊戲畫面。

以往 GPU 繪圖與螢幕顯是綁在一起連動的,而 Fast Sync 則是將工作分成兩塊,GPU 就盡量的去繪製影像,不用管顯示的運作,而 顯示這邊則有三個緩衝來處理,分別是:Front Buffer(FB)、Back Buffer(BB)與 Last Renderd Buffer(LRB)。FB 儲存著掃描至螢幕的畫面、BB 則是儲存現在正在渲染還未完成的影像,而當 BB 繪製完成但 FB 還沒掃描完畢時,BB 會與 LRB 透過 rename 的方式,讓 BB 繼續儲存正在渲染的影像,這段 BB 與 LRB 互換會持續到,螢幕掃描完畢後,LRB 會 rename 成 FB 開始新的畫面掃描。

如此一來,Fast Sync 的輸入延遲會相當接近未開啟垂直同步的狀態,這功能日後可以在 NVIDIA 控制面板中控制;換句話說,Fast Sync 會盡可能的依照螢幕更新率提供最高的畫面掃描。

nvidia-gtx-1080-p23
↑ Fast Sync 的影像從遊戲引擎到顯示的流程,虛線左方為運算區,右方則是顯示區。

 

nvidia-gtx-1080-p24
↑ Input Latency 比較。

 

新的 SLI HB 與 Multi-GPU 模式

發表會上提到的新 SLI HB 橋接器,可以讓雙卡 SLI 運作在 650 Mhz 的速率,比起舊的橋接器僅 400 Mhz,且新的橋接器將支援 4K、5K 與 Surround,並且 NVIDIA 提到將不建議玩家或開發商,使用 3-Way 與 4-Way SLI 模式,因為超過雙 GPU 的遊戲在開發上,其實相對困難許多,且無法完整的進行優化;假設未來各位還是希望在 Pascal 上啟用 3-Way 或 4-Way SLI,須至 NVIDIA Enthusiast Key 網站,取得 Enthusiast Key 之後才能讓系統支援 2-Way 以上的 SLI 模式。

SL09_GEFORCE_SLI-2CardInsideCase_01_v003_SD_s_2000px_1463236969
↑ 新的 SLI HB 橋接器。

 

此外,對應 DirectX 12 API,Multi-GPU 模式將分為兩種:Multi Display Adapter(MDA)、Linked Display Adapter(LDA),此外 LDA 又分為 Implicit LDA 與 Explicit LDA。在 LDA 模式,雙 GPU 可相互連結,並將記憶體組成超大的記憶體 pool,但是這樣的使用模式,若遇到當 GPU1 所需要的資料,卻儲存在 GPU2 的記憶體當中時,效能會因為資料在兩顆 GPU 點對點傳輸而造成影響。

LDA 模式需要兩張相同的顯示卡才可使用;而 MDA 模式則不限定使用的顯示卡廠牌,也就是之前傳說的 NVIDIA + AMD 顯卡的雙 GPU 系統,就必須運行在 DX12 的 MDA 模式,但是要能使用 MDA 模式需要遊戲的支援,且在開發上需要自行”精細”處理,GPU 的操作與通訊處理。

簡單來說,NVIDIA 預設 SLI 是運行在 Implicit LDA 模式,而若是遊戲開發者,則可以使用 Explicit LDA 與 MDA 模式;而實際的雙 GPU 使用模式,與遊戲或開發時使用的 DirectX API 有關,MDA 與 LDA 皆是 DX12 API 下雙 GPU 的使用模式。

nvidia-gtx-1080-p25
↑ Multi-GPU 模式。

 

Pascal GPU 將完整支援 HEVC 編解碼

Pascal GPU 不僅支援 PlayReady 3.0,還支援了 HEVC 的硬體編解碼能力,在 Maxwell 世代中率先支援了 HEVC Encode,而隨後其 GTX 950 顯示卡支援 HEVC 硬體編解碼的能力,而這一代 Pascal 還支援 10-bit HEVC Encode 與 10-bit/12-bit HEVC Decode,以及 VP9 Decode 能力。

GTX 1080 提供 DisplayPort 1.2 認證,以及 DP 1.3/1.4 Ready,並且支援 4K@120Hz、5K@60Hz 與 8K@60Hz(使用兩組 DP 1.3)。

nvidia-gtx-1080-p26
↑ GTX 1080 編解碼支援列表。

 

總結:GTX 1080 可以說是滿滿誠意阿!光效能表現就令人驚嘆,其中引領業界的技術實力更是強悍。對玩家來說,除了效能大幅提升之外,功耗更是漂亮,對玩家與開發者都有一個交代,寫完這篇對 GTX 1080 有了更大的期待,但實際遊戲效能方面,還是要等待收到顯示卡之後再進行測試,且新一代的 GPU Boost 3.0,可以針對 GPU 自身體質去超頻,讓超頻幅度比起 2.0 還要提高許多,這代 GTX 1080 真的讓人眼睛為之一亮,稍不注意就想拿小朋友去換一張 GTX 1080 回家。

本篇未完待續 

nvidia-gtx-1080-p22
↑ 這功耗、這效能,GTX 1080 實在太狂了。

臉書留言