打倒X86!NVIDIA的CPU+GPU戰略全解析
泡泡網顯卡頻道9月4日 就在Intel和AMD為CPU+GPU融合技術而開展新一輪爭霸賽的時候,NVIDIA卻另辟蹊徑,通過移動處理器Tegra 2一舉拿下了Android平臺(智能手機+平板電腦)34.4%的市場份額,據分析第二季度市占率有望擴大至48.6%。而傳統的X86處理器在平板領域的市占率還不足5%。
Tegra 2勢不可擋,橫掃Android市場
在移動領域輝煌的表現讓NVIDIA股價大幅飆升,但這并不意味著NVIDIA將放棄PC市場。由于沒有處理器產品及相關技術授權,讓NVIDIA在PC領域屢受挫折,但沒有人能阻止NVIDIA的野心,事實上早在三年前NVIDIA就已經啟動了CPU研發計劃,而Tegra的卓越表現以及微軟Windows 8將支持ARM架構處理器的消息,更是讓NVIDIA看到了希望,打敗X86的機會終于要來了……
NVIDIA下代Tegra3:四核A9處理器即將發布,誰能擋我?
本文將從NVIDIA的GPU計算部分開始,對該公司CPU開發部門的情況進行整理。
Windows 8將支持ARM架構,Tegra可以跑Windows了
NVIDIA首個通用CPU開發計劃"Project Denver"不僅對于CPU+GPU混合加速計算是一個里程碑,同時對于GPU計算(GPU Computing)能力的突破也是不可或缺的存在。NVIDIA內部人士透露,其實Project Denver在距今3年半前已經開始初步謀劃,初始目的是為了提高GPU的并行計算性能,以及更好對GPU內部指令進行排列管理,需要更強大的處理器,因此開始初步研究CPU的開發。不過途中突然生變:微軟下一代操作系統Windows 8宣布支持ARM架構處理器,NVIDIA也隨之對計劃作出改變。
2011年7月下旬在東京六本木舉行的GTC Workshop Japan 2011大會上,NVIDIA日本分公司的馬路徹做了名為GPU架構和GPU計算入門的演講,其中說明了GPU計算能力的現狀。
他在演講中提到:受益于18個月晶體管集成度提高一倍的摩爾定律,CPU的性能在2000年以前順利提升。2000年之前,平均每年晶體管的速度隨著工藝進步提高約19%,Pipeline-F/F(即Flip-Flop,觸發器,具有記憶功能短暫保存輸入信號的邏輯回路)之間的邏輯門數目每年削減約9%,微架構帶來的性能改良每年約18%,總體計算每年CPU提高的性能約(1.19*1.09*1.18-1)*100%=52%。
摩爾定律其實不是預測CPU性能提高的規律
而是預測半導體技術提高幅度的規律,主要是晶體管的集成度
2000年前,CPU性能基本按照摩爾定律所預測的幅度逐年提高性能
但是在2000年以后,尤其CPU開始受益于多核化的2005年以后,摩爾定律逐漸遇到瓶頸,而和多核處理器并行計算性能有關的阿姆達爾定律(Amdahl''s Law)逐漸受到關注。
阿姆達爾定律:單純靠CPU核心數提高改進執行效率是有界限的
阿姆達爾定律的準確內容是:固定負載(計算總量不變時),計算機的加速比可用(Ws+Wp)/(Ws+Wp/p)來表示,其中Ws,Wp分別表示問題規模的串行分量(問題中不能并行化的部分)和并行分量,p表示處理器數量。對該式取極限即當處理器數量接近無窮大時,結果為1+Wp/Ws,也就是無論我們如何增大處理器數目,加速比無法高于(據維基百科)。
2000年后CPU堆積晶體管的方式轉為提高核心數量
CPU性能提高的速度在逐年放緩
當然,CPU廠商已經預計到阿姆達爾定律所預見的情況出現,將CPU改造成適合并行計算的架構和加入對應的指令集。Intel的MMX,SSD,AVX等強化SIMD計算功能的指令集就是如此;同時Intel還推出了一系列對應多核CPU的開發套件,均為了提高并行計算性能。
不過,這種手段也有界限,最終結果就是,HPC等高性能計算業界紛紛轉向原本就擁有適合提高并行計算性能架構的GPU。
馬路徹表示,“由于GPU本身的架構,半導體集成度的增加主要提高的是并行計算性能。即使是現在每年性能提高幅度也有74%左右。”此外,GPU和CPU并行處理性能差也將越拉越大,以浮點運算計,2001年的顯示核心浮點性能是當時CPU的30倍,而這一差距在今日已經拉大到1000倍,今后也將繼續擴大下去。
同樣依照摩爾定律發展,GPU通用計算能力比CPU提高幅度要大得多
自從NVIDIA支持DX10的統一渲染架構G80核心發布以來,半導體工藝的進步使得GPU內置的核心(流處理器)數量越來越多,GPU基礎架構改良速度對比CPU也越來越快。GPU的通用計算能力在這幾年來得到很大提高。
NVIDIA旗下GPU的核心數量變化歷史
因為GPU起初是為圖形處理設計,對指令集的依存度很低,即使再多線程數量也仍然能保持并行處理性能維持在高水平不變。舉例來說,對于3D角色的反射光計算,每個多邊形反射光計算中法線處理互不相干,因此多邊形數量再多也不會造成瓶頸,GPU的運算能力可以充分發揮。
CPU和GPU的并行處理示意圖
GPU實際并行計算示例:復雜多邊形的反射光處理運算
GPU理論浮點運算性能取得了飛躍
GPU并行計算適合多種要求高性能運算的應用
因此,科學運算中最適合利用GPU強大的并行計算能力,馬路徹表示,NVIDIA近年來所力推的Tesla加速卡就是例子,同時取得了很多成果。
不過GPU的發展也會受到阿姆達爾定律的影響,當GPU集成的核心數量越來越多時也一定會遇到瓶頸。解決瓶頸的方法可以是在GPU中加入線程控制機能,用來安排指令優先級和打包指令使其提高執行效率。
NVIDIA G80核心流水線示意圖
NVIDIA GT100(GTX280)核心架構圖
NVIDIA在G80架構中首次在芯片和流處理器(SM)級別都加入了線程管理機能"Thread Scheduler",此后隨著圖形核心的發展,在Fermi架構上Thread Scheduler進化為"Gigathread Engine",使得并行運算性能進一步得到大幅提高。
并行計算架構示意圖
Fermi核心架構圖,Thread Scheduler進化為GigaThread Engine
但是,在CUDA Core數量最大已經達到512個的況下,如果再增加勢必會給線程管理模塊部分帶來更高負荷,甚至有發熱過高燒毀的危險。因此,為了使GPU的并行計算性能維持優勢,需要搭載更加強力的線程控制及管理模塊,Project Denver正是為此誕生。
GigaThread Engine介紹,搭載2基硬件級別線程管理DMA引擎
NVIDIA負責產品市場部門的執行副總裁Ujesh Desai確認了Project Denver從三年前就已經開始開發,目標是實現CPU和GPU的統合。
受微軟宣布下代操作系統Windows 8將正式支持ARM架構的影響,NVIDIA原本的ARM核心CPU業務范圍也將擴大。在3月召開的投資者會議Financial Analyst Day 2011上,NVIDIA總裁兼CEO黃仁勛宣布,Denver的核心將使用未來的Tegra處理器。
NVIDIA的目標是成為"Computing Company"
要實現這一目標CPU業務也是重要的收益來源
雖然黃仁勛的說法擺在那里,不過看起來Project Denver和Tegra的關系不是那么簡單:NVIDIA移動業務總經理Micheal Rayfield稱:“Project Denver和Tegra毫無關系”。他說:“用于移動業務的Tegra最注重目標是省電性能,將不會冒進,沿著ARM提供的Roadmap進行SoC開發。”“Kal-El將是Cortex-A9架構四核處理器,Wayne也自然會沿用下一架構。”表明了Wayne將使用Cortex-A15架構。
2011年5月曝光的Project Denver核心示意圖
同時Desai也從另外一方面驗證了上述表態:“Project Denver目標是成為面向HPC(高性能計算)的強力CPU核心,不會像Tegra一樣考慮省電。”Project Denver究竟目的在哪?
那么,Project Denver開發的CPU核心究竟是什么樣的東西呢?可從2010年11月在美國路易斯安那州新奧爾良市召開的HPC相關技術大會"SC10"上窺見一斑,同時也可從NVIDIA在GTC Workshop Japan 2011上公開的Roadmap中"Echelon"高性能HPC向平臺推測出部分內容。
Echelon計劃的來頭頗大,主導機關是美國國防部下屬的DARPA(國防尖端技術研究開發計劃局),目標是在2018年實現ExaScale級別計算能力的超級計算機(UHPC),Echelon的開發受到這一項目的經費資助。DARPA資助經費的規定為,在2014年前完成Phase1階段的開發,即設計完成硬件部分,同時要報送DARPA審查。
Echelon模塊圖解
NVIDIA首席科學家Bill Dally在SC10大會上的演講內容中透露,Echelon為128個SM模塊和Project Denver的基礎——名為Latency Processor的8個CPU核心所組成,其中每個SM模塊含有8個CUDA Core和獨立的L0 Cache。據此計算,Echelon芯片整體含有8*128=1024個CUDA Core。
Echelon由128個SM模塊和8個Latency Processor組成,后者就是Denver的核心
各個SM模塊獨立命名為"NoC"(Network on Chip)通過內部界面,經由L2 Cache和內存控制器與其他SM相互連接。L2 Cache和CUDA Core數量一樣分1024塊,單個Echelon芯片中,NoC通過MC與一同封裝的DRAM Cube連接帶寬可達1.4TB/s。
內存和每個Echelon的MCM Node在同一封裝內相連,帶寬可達1.4TB/s
Echelon芯片的峰值計算性能(以雙精度浮點運算記)可達20T FLOPS。NVIDIA設想的每個Echelon機柜搭載32個模塊,每個模塊封裝4個Echelon芯片,這樣單個機柜的運算能力可達2.56P FLOPS。Echelon的Phase1(第一階段)設計就是如此,NVIDIA將在此基礎上第二階段主要考慮繼續提高運算性能和降低芯片所消耗的電力。
每個Echelon機柜由128個Node(即單Echelon芯片)組合而成
實現2.56P FLOPS的計算能力,功率38千瓦
400個機柜即可實現Exa級別的計算,功率約150萬瓦
為了配合UHPC一期開發階段制造Echelon工程樣品的需要,2013年前需要完成Latency Processor即Project Denver的CPU核心開發工作。
這和NVIDIA在GTC Workshop Japan 2011上公開的最新平臺路線圖相符合,Project Denver將和NV的下下代GPU核心"Maxwell"在同一時段登場。公布的幻燈片將Denver和Maxwell劃在了同一個框內,或許Echelon就是Maxwell和Denver核心的組合體?
NVIDIA的GPU發展路線圖
不過和Echelon專注于通用計算不同的是,作為需要兼顧到原本3D應用的GeForce系列芯片,Maxwell不太可能采用像前者一樣激進的GPGPU專用架構。根據前面Echelon擁有1024個CUDA Cores實現20T FLOPS計算能力推算,如果Maxwell和Fermi成品旗艦顯卡的TDP相當,在250W左右的話,雙精度浮點性能大約為3.5-4T FLOPS為Tesla的15倍,Fermi的7.5倍左右,和NV路線圖展示的比例相近。但如果兩者架構相同,Maxwell的CUDA核心數可能會降到200左右,現在NVIDIA旗艦顯卡GTX 580則有512個。由此看來除非NV桌面顯卡架構也跟著大變,否則Maxwell和Echelon不太可能采用同樣架構,兩者的GPU性能不是為同一級別應用設計。
GTC Workshop Japan 2011上公開的各平臺框架圖
此外,黃仁勛也曾經發表過關于Project Denver性能的評論,他在GPU Technology Conference 2010會議上曾經表示,將GPU和現有的ARM架構CPU(Cortex-A9)整合后,整數運算性能將是原有的3-4倍。如果這里整合產物指的是Project Denver,那么它的性能將是下代ARM Cortex A-15的2倍以上。如果此目標真能實現,那么NVIDIA將在ARM陣營內爭奪主導權的戰斗中占據上風,Project Denver也將圓滿完成目標。
ARM公開的Cortex-A15對比同頻Cortex-A9的性能對比圖
如果Project Denver是A9的3-4倍,那么將是Cortex-A15性能的2倍以上
Desai曾經稱NVIDIA的CPU核心開發部分在同時推進多個計劃,在筆者看來,Project Denver或許還有另外一個出路——進駐基于Windows 8的筆記本電腦用SoC(System on a Chip)市場。
回顧一下前面提到的內容,Echelon、Maxwell和Denver核心的功耗都比較高,進駐筆記本電腦SoC芯片市場的可能性很小。而目前還沒有Tegra和Project Denver合并的計劃,Tegra處理器在2011年2月MWC 2011大會上公開的路線圖也多是針對智能手機和平板電腦市場,并且Tegra的性能目前看來也只適合低端筆記本。 此外,2013年Intel和AMD預計都將力推超薄筆記本電腦所用CPU SoC化,特別是Intel從現在就開始力推Ultrabook概念。難得Windows 8開始支持ARM架構處理器,NVIDIA沒理由不參與這一世代的筆記本電腦市場競爭。
這樣看來,Tegra可能會從Project Denver的第二代CPU核心開始與后者整合。目前我們得知的消息是,四核Kal-El的下一代Tegra "Wayne"和下下代"Logan"均將使用Cortex-A15架構,而2014年的"Stark"就是Tegra和Denver的最好整合時期。至于Stark以后NVIDIA將怎樣活用Project Denver的成果繼續發展Tegra品牌產品,我們大可拭目以待。
Tegra產品發展路線圖
總結:Project Denver是NVIDIA在CPU+GPU混合計算時代掌握市場主導權的最重要計劃,此后NV旗下產品將主要分為三大塊:著重于GPGPU的高性能計算處理器、3D游戲用GPU、平板電腦和智能手機等移動設備的Tegra三足鼎立,對比最早單GPU和近年來Tegra+GPU的戰略做了重大變革。■<
關注我們



