Nvidia不久前發(fā)布了下一代GPU架構(gòu),架構(gòu)名字為“Hopper”(為了紀(jì)念計(jì)算機(jī)科學(xué)領(lǐng)域的先驅(qū)之一Grace Hopper)。根據(jù)Nvidia發(fā)布的具體GPU規(guī)格,,我們認(rèn)為Nvidia對(duì)于Hopper的主要定位是進(jìn)一步加強(qiáng)對(duì)于人工智能方面的算力,而其算力升級(jí)依靠的不僅僅是硬件部分,,還有不少算法和軟件協(xié)同設(shè)計(jì)部分,本文將為讀者做詳細(xì)分析,。我們認(rèn)為,,在Nvidia更下一代的GPU中,我們有望看到芯粒技術(shù)成為新的亮點(diǎn)來突破其瓶頸,。
Hopper的性能有多強(qiáng)
根據(jù)Nvidia公布的數(shù)據(jù),,基于Hopper架構(gòu)的GPU(H100)使用TSMC的4nm工藝設(shè)計(jì),將會(huì)是Ampere架構(gòu)(使用TSMC 7nm工藝)之后的又一次重大升級(jí),,其16位浮點(diǎn)數(shù)峰值算力(FP16)將會(huì)由之前的312 TFLOPS增加到1000 TFLOPS,,INT8峰值算力則由之前的624TOPS增加到2000TOPS。由此可見FP16(常用于人工智能訓(xùn)練)和INT8(常用于人工智能推理)的峰值算力基本上都是翻了三倍,,這個(gè)H100相對(duì)A100峰值算力提升的比例基本符合A100和再上一代GPU V100的提升數(shù)字,。
而根據(jù)Nvidia官方公布的具體任務(wù)性能提升,我們也可以看到大多數(shù)人工智能相關(guān)任務(wù)的性能提升基本在2-4倍之間(尤其是使用transformer類模型的性能提升較為突出,,接近4倍),,初看也和峰值算力提升三倍基本吻合。但是如果我們仔細(xì)分析Nvidia H100具體芯片指標(biāo),,我們認(rèn)為在人工智能任務(wù)中,,H100的提升不僅僅是來自于一些硬件指標(biāo)(例如核心數(shù)量,DRAM帶寬,,片上存儲(chǔ)器)的提升,,更是來自于Nvidia做了算法硬件協(xié)同設(shè)計(jì)。例如,,Nvidia在Hopper架構(gòu)中引入了為Transformer系列模型專門設(shè)計(jì)的八位浮點(diǎn)數(shù)(FP8)計(jì)算支持,,并且還加入了專門的Transformer engine硬件模塊來確保transformer模型的運(yùn)行效率,。因此,,我們看到在Nvidia公布的人工智能任務(wù)性能提升中,使用transformer的任務(wù)(如GPT-3)的性能提升要高于傳統(tǒng)的基于CNN(如Mask R-CNN)的性能提升,。
存儲(chǔ)方面提升相對(duì)較小
在人工智能等高性能計(jì)算中,,存儲(chǔ)(包括DRAM接口帶寬和片上存儲(chǔ)容量)和計(jì)算單元一樣重要,,在很多時(shí)候存儲(chǔ)甚至?xí)蔀檎w性能的瓶頸,例如峰值算力無法持續(xù),,導(dǎo)致平均計(jì)算能力遠(yuǎn)低于峰值算力,。在Hopper架構(gòu)中,我們看到了峰值算力提升大約是Ampere的三倍,,然而在DRAM帶寬和片上存儲(chǔ)方面,,Hopper相對(duì)于Ampere的提升較小,只有1.5倍和1.25倍,。
在DRAM帶寬方面,,我們看到H100有兩個(gè)版本,其中使用最新一代HBM3的版本的內(nèi)存帶寬是3TB/s,,相比于A100(2TB/s)的提升為1.5倍,,相比峰值算力的三倍提升相對(duì)較小。反觀A100相對(duì)更上一代V100的內(nèi)存帶寬提升為2.2倍,,因此我們認(rèn)為H100的HBM3內(nèi)存帶寬提升幅度確實(shí)相對(duì)上一代來說較小,。我們認(rèn)為,HBM3帶寬提升較小可能和功耗有關(guān),。
仔細(xì)分析Hopper發(fā)布的GPU,,我們發(fā)現(xiàn)Hopper架構(gòu)的GPU目前有兩個(gè)品類,一個(gè)是使用HBM3內(nèi)存的版本,,而另一個(gè)是仍然使用HBM2e的版本,。HBM3版本的H100相對(duì)于使用HBM2e版本的H100在其他芯片架構(gòu)上(包括計(jì)算單元)的差距不過10%(HBM3版本的計(jì)算單元較多),但是在功耗(TDP)上面,,HBM3版本的H100的TDP比HBM2e版本H100整整高出兩倍(700W vs. 350W),。即使是相對(duì)于上一代使用7nm的Ampere架構(gòu),其功耗也提高了近兩倍,,因此能效比方面提升并不多,,或者說即使更先進(jìn)的芯片工藝也沒法解決HBM3的功耗問題。因此,,我們認(rèn)為H100 HBM3版本DRAM內(nèi)存帶寬增加可能是受限于整體功耗,。而當(dāng)DRAM帶寬提升較小時(shí),如何確保DRAM帶寬不成為性能瓶頸就是一個(gè)重要的問題,,因此Nvidia會(huì)提出FP4和Transformer Engine等算法-硬件協(xié)同設(shè)計(jì)的解決方案,,來確保在執(zhí)行下游任務(wù)的時(shí)候仍然效率不會(huì)受限。
除了DRAM帶寬之外,,另一個(gè)值得注意的點(diǎn)是Hopper GPU的片上存儲(chǔ)增長(zhǎng)僅僅是從A100的40MB增長(zhǎng)到了H100的50MB,;相對(duì)來說,A100的片上存儲(chǔ)相對(duì)于更上一代V100則是增加了6倍,。我們目前尚不清楚H100上片上存儲(chǔ)增長(zhǎng)這么少的主要原因,,究竟是因?yàn)镹vidia認(rèn)為40-50MB對(duì)于絕大部分任務(wù)已經(jīng)夠用,,還是因?yàn)楣に嚵悸实脑驅(qū)е略偌覵RAM會(huì)大大提升成本。
但是,,無論如何,,隨著人工智能模型越來越復(fù)雜, 對(duì)于片上存儲(chǔ)的需求越來越高,,片上存儲(chǔ)容量較小就會(huì)需要有更好的人工智能模型編譯器和底層軟件庫來確保模型執(zhí)行過程中能有最高的效率(例如,,確保能把模型數(shù)據(jù)更好地劃分以盡量在片上存儲(chǔ)中執(zhí)行,而盡可能少地使用DRAM),。Nvidia在這一點(diǎn)上確實(shí)已經(jīng)有了很深厚的積累,,各種高性能相關(guān)的軟件庫已經(jīng)有很好的成熟度。
我們估計(jì)Nvidia有強(qiáng)大的軟件生態(tài)作為后盾也是它有能力在設(shè)計(jì)中放較少片上存儲(chǔ)(以及較小的DRAM帶寬)的重要原因,。這一點(diǎn)結(jié)合之前Nvidia在Hopper引入的新模型-芯片結(jié)合設(shè)計(jì)技術(shù),,例如能大大降低內(nèi)存需求的FP4技術(shù),以及為了Transformer模型專門設(shè)計(jì)的Transformer Engine,,這些其實(shí)從正反兩面論證了我們的觀點(diǎn),,即Hopper架構(gòu)很多的性能提升事實(shí)上是來自于軟硬件結(jié)合設(shè)計(jì),而并非僅僅是芯片/硬件性能提升,。
Nvidia下一步突破點(diǎn)在哪里,?
如前所述,Nvidia的Hopper架構(gòu)GPU的芯片領(lǐng)域的突破相比上一代Ampere架構(gòu)并沒有特別大,,而是主要由軟硬件結(jié)合設(shè)計(jì)實(shí)現(xiàn)性能提升,。我們看到在存儲(chǔ)領(lǐng)域(包括DRAM接口和片上存儲(chǔ)容量)的提升尤其小,而這可能也會(huì)是Nvidia進(jìn)一步提升GPU性能的一個(gè)重要瓶頸,,當(dāng)然突破了之后也會(huì)成為一個(gè)重要的技術(shù)壁壘,。如前所述,HBM3的功耗可能是一個(gè)尚未解決的問題,,而如何在芯片上放入更多的片上存儲(chǔ)器則將會(huì)被良率和成本所限制,。
在存儲(chǔ)成為瓶頸的時(shí)候,芯片粒(chiplet)將會(huì)成為突破瓶頸的重要技術(shù),。正如之前所討論的,,當(dāng)片上存儲(chǔ)容量更大時(shí),GPU對(duì)于DRAM等片外存儲(chǔ)的需求就會(huì)越來越少,,而片上存儲(chǔ)的瓶頸則是良率和成本,。一般來說,芯片的良率和其芯片面積成負(fù)相關(guān),,當(dāng)芯片面積越大時(shí),,則芯片良率會(huì)相應(yīng)下降,尤其是在先進(jìn)工藝中,良率更是一個(gè)重要考量,。而芯片粒則是可以大大改善這個(gè)問題:芯片粒技術(shù)并不是簡(jiǎn)單地增加芯片的面積(例如更多片上存儲(chǔ)),而是把這些模塊分散在不同的芯片粒中,,這樣一來整個(gè)芯片粒的芯片面積就會(huì)大大下降,,從而改善良率。
此外,,隨著GPU規(guī)模越來越大,,為了能更好地控制整體良率,使用芯片粒技術(shù)也是一個(gè)自然地選擇,。我們認(rèn)為,,在今天HBM3技術(shù)的功耗遇到瓶頸的時(shí)候,或者說HBM技術(shù)整體從功耗上遇到挑戰(zhàn)的時(shí)候,,下一步的重要方向一定是從簡(jiǎn)單地增加DRAM帶寬和在單個(gè)芯片上放更多晶體管變到更精細(xì)地設(shè)計(jì)架構(gòu)和片上存儲(chǔ),,這也就讓芯片粒占到了舞臺(tái)中央。
事實(shí)上芯片粒和GPU的結(jié)合對(duì)于業(yè)界來說并不陌生,。事實(shí)上Nvidia最有力地競(jìng)爭(zhēng)對(duì)手AMD已經(jīng)把芯片粒技術(shù)使用在GPU上,,此外在片上存儲(chǔ)部分AMD也發(fā)布了3D V-Cache,可望成為下一代繼續(xù)增加片上存儲(chǔ)的重要技術(shù),。Nvidia在芯片粒方面也有相關(guān)布局,,這次與Hopper同時(shí)間發(fā)布的用于芯片粒互聯(lián)的UCIe標(biāo)準(zhǔn)也意味著Nvidia在芯片粒領(lǐng)域的投資,。我們認(rèn)為,,在Nvidia未來公布的GPU中,非常有可能可以看到芯片粒技術(shù)的大量應(yīng)用,,而這結(jié)合Nvidia的軟硬件協(xié)同優(yōu)化技術(shù)有可能會(huì)成為下一代Nvidia GPU的最大亮點(diǎn),。