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