AI做顯卡、顯卡跑AI!英偉達(dá)實(shí)現(xiàn)芯片設(shè)計(jì)自循環(huán)?
了解英偉達(dá)的研發(fā)情況,已經(jīng)成為每年英偉達(dá)春季GTC會議的一個常規(guī)特征。
比如首席科學(xué)家兼研究部高級副總裁Bill Dally每年就會提供英偉達(dá)研發(fā)機(jī)構(gòu)的概況和關(guān)于當(dāng)前優(yōu)先事項(xiàng)的一些細(xì)節(jié)。
2022年,Dally主要關(guān)注英偉達(dá)正在開發(fā)和使用的AI工具,這些AI正在改善英偉達(dá)自身的產(chǎn)品。
如果愿意接受的話,這其實(shí)是一個巧妙的反向營銷案例:英偉達(dá)從制作顯卡來做跑AI工具的公司,成為了一家AI工具用來做顯卡的公司。
是的,英偉達(dá)已經(jīng)開始使用AI智能來有效改善和加快自家的顯卡設(shè)計(jì)。
Dally在2022年的GTC演講中描述道:「我們的設(shè)計(jì)團(tuán)隊(duì)是一個約有300人的小組,試圖在英偉達(dá)的產(chǎn)品設(shè)計(jì)上探索更有前瞻性的領(lǐng)先位置。我們有點(diǎn)像遠(yuǎn)光燈,試圖照亮遠(yuǎn)處的東西。這個團(tuán)隊(duì)被松散地組織成兩半。
供應(yīng)部分負(fù)責(zé)提供顯卡的技術(shù)。它使顯卡本身更好,從電路、到超大規(guī)模集成設(shè)計(jì)方法、架構(gòu)網(wǎng)絡(luò)、編程系統(tǒng),以及讀入顯卡和基于顯卡的軟件的存儲系統(tǒng)?!?/span>
「需求部分試圖通過開發(fā)要用顯卡才能良好運(yùn)行的軟件系統(tǒng)和技術(shù),來推動市場對英偉達(dá)產(chǎn)品的需求。
例如我們有三個不同的圖形研究小組,因?yàn)槲覀冊诓粩嗤苿佑?jì)算機(jī)圖形技術(shù)的發(fā)展。我們還有五個不同的人工智能小組,因?yàn)槭褂肎PU來運(yùn)行AI是目前一個巨大的熱門,而且只會越來越熱。我們也有做機(jī)器人和自動駕駛汽車的小組。」
「我們還有一些以地域?yàn)閷?dǎo)向的實(shí)驗(yàn)室,如我們的多倫多和特拉維夫人工智能實(shí)驗(yàn)室。」
偶爾,英偉達(dá)公司會從這幾個小組中抽出部分人力重組個登月式項(xiàng)目,例如,其中一次此類項(xiàng)目產(chǎn)生了英偉達(dá)的實(shí)時光線追蹤技術(shù)。

光追項(xiàng)目的組織架構(gòu)圖
一如既往,2022年的研究與Dally上一年的談話有重復(fù)之處,但也有新的信息。比如該部門的規(guī)??隙ㄒ呀?jīng)從2019年的175人左右增長了很多。毫無疑問,英偉達(dá)開發(fā)自動駕駛系統(tǒng)和機(jī)器人的努力也已經(jīng)加強(qiáng)了。Dally沒有多說CPU的設(shè)計(jì)工作,這無疑也在增強(qiáng)。
接下來呈現(xiàn)的是Dally演講中關(guān)于英偉達(dá)在設(shè)計(jì)芯片時越來越多地使用AI的一小部分內(nèi)容。
繪制電壓下降圖
Dally指出:「作為人工智能的專家,我們自然希望利用AI來設(shè)計(jì)更好的芯片。」
英偉達(dá)的顯卡設(shè)計(jì)部門以幾種不同的方式做到這一點(diǎn)。第一個也是最明顯的方法是,可以利用現(xiàn)有的計(jì)算機(jī)輔助設(shè)計(jì)工具,并將AI模型納入其中。
例如,顯卡設(shè)計(jì)部門有一個輔助設(shè)計(jì)的軟件工具,其中的AI實(shí)時測繪了英偉達(dá)的GPU顯卡產(chǎn)品中使用電力變化的位置圖譜,并實(shí)時預(yù)測電壓網(wǎng)格下降的程度。
一般電壓下降是用電流乘以電阻下降度算出,要在傳統(tǒng)的CAD工具上運(yùn)算出這個值需要三個小時。因?yàn)檫@是一個迭代的過程,一直用傳統(tǒng)工具的話,對設(shè)計(jì)部門來說,工作量會變得非常艱巨。

概念展示
英偉達(dá)的顯卡設(shè)計(jì)部門想做的是訓(xùn)練一個AI模型來獲取相同的數(shù)據(jù)。開發(fā)人員在一堆設(shè)計(jì)上如此試行過后,然后給AI輸入功率圖。AI由此產(chǎn)生的推理時間只有三秒。
當(dāng)然,如果你包括上功率圖特征值提取的時間,那就是18分鐘。無論如何,與傳統(tǒng)效果相比這都是非??斓慕Y(jié)果。
在類似的前提情況下,顯卡設(shè)計(jì)部門還嘗試了不使用卷積神經(jīng)網(wǎng)絡(luò)AI、而是使用圖神經(jīng)網(wǎng)絡(luò)的AI。如此處理的目的是為了估計(jì)顯卡電路中不同節(jié)點(diǎn)的開關(guān)頻率,這實(shí)際上推動了前述例子中的功率特征值輸入效率。
附帶的效果是,英偉達(dá)的開發(fā)人員能夠得到非常準(zhǔn)確的顯卡電路功率估計(jì),比傳統(tǒng)工具要快得多,而且只用了很小的一部分時間。
預(yù)測寄生元件
Dally特別喜歡的、若干年前他作為一名電路設(shè)計(jì)師投入相當(dāng)多時間的設(shè)計(jì)項(xiàng)目,是用圖形神經(jīng)網(wǎng)絡(luò)AI預(yù)測寄生元件(設(shè)計(jì)時未曾打算或預(yù)料到的電子元件)將會如何被附加到最終成品中。
過去,電路設(shè)計(jì)是一個非常反復(fù)的過程,設(shè)計(jì)師會畫出一個帶了一堆晶體管標(biāo)志的電路原理圖。但他不會知道電路板的性能如何。
直到布局設(shè)計(jì)師拿著這個原理圖,做了布局樣品,附加了寄生元件,然后設(shè)計(jì)者才可以運(yùn)行電路模擬,發(fā)現(xiàn)其中哪些部分不符合預(yù)期的設(shè)計(jì)規(guī)格。
然后設(shè)計(jì)師會返回去修改他的原理圖,并再次麻煩布局設(shè)計(jì)師再跑一遍這個流程,這是一個非常漫長的、反復(fù)的、不人性的勞動密集型過程。

現(xiàn)在英偉達(dá)的顯卡設(shè)計(jì)部門可以做到的,是訓(xùn)練神經(jīng)網(wǎng)絡(luò)來預(yù)測寄生元件,而不需要讓布局設(shè)計(jì)師制造布局樣品才發(fā)現(xiàn)瑕疵。
因此,電路設(shè)計(jì)者可以非??焖俚氐?,而不需要在循環(huán)中重復(fù)進(jìn)行手動設(shè)計(jì)-布局-再設(shè)計(jì)的步驟。
按Dally表示,與基礎(chǔ)真實(shí)值相比,現(xiàn)在英偉達(dá)的設(shè)計(jì)AI對這些寄生器件的預(yù)測非常準(zhǔn)確。
布局/布線擁塞
同時,我們還可以預(yù)測芯片的布局/布線帶來的擁塞問題,這對芯片的布局至關(guān)重要。
按正常的流程,芯片設(shè)計(jì)人員會做一張網(wǎng)格表,運(yùn)行一遍布局和布線的過程。一般這個過程非常耗時,會花費(fèi)數(shù)天的時間。
只有如此設(shè)計(jì)師們才能獲得顯卡樣品實(shí)際的擁塞情況,光有設(shè)計(jì)圖的初始布局是不夠的。
設(shè)計(jì)師們需要將其重構(gòu),并以不同的方式放置宏,以避開紅色的區(qū)域(如下圖所示)。紅色區(qū)域有太多交錯的線路穿過給定的區(qū)域,就像比特版「交通堵塞」。

而像這種情況,用上輔助設(shè)計(jì)的AI之后,沒必要再跑一邊布局和布線,就可以拿著這些網(wǎng)格列表,并用圖像神經(jīng)網(wǎng)絡(luò)AI對擁塞出現(xiàn)的位置進(jìn)行基本預(yù)測,結(jié)果還算準(zhǔn)確。
雖說還不算完美,但是能顯示哪些區(qū)域存在問題。之后設(shè)計(jì)團(tuán)隊(duì)就可以在特定區(qū)域采取行動,快速完成迭代,不再需要一遍遍重復(fù)全局布局和布線了。
芯片標(biāo)準(zhǔn)單元設(shè)計(jì)自動化
現(xiàn)有的方法都是用AI來評價人類的設(shè)計(jì),而未來,更令人興奮的是能夠使用AI來完成設(shè)計(jì)。
Dally舉了兩個例子來說明AI如何完成芯片設(shè)計(jì)。
第一個系統(tǒng)叫NVCell,它結(jié)合了模擬低溫退火和加強(qiáng)學(xué)習(xí),基本上能夠設(shè)計(jì)出數(shù)字集成電路的標(biāo)準(zhǔn)單元庫。
每次設(shè)計(jì)師實(shí)現(xiàn)了芯片技術(shù)上的升級——比方說從7納米優(yōu)化到5納米,設(shè)計(jì)師都會創(chuàng)造出一個單元庫。
一個單元就像是一個「與門」和「或門」,是一種完全的加速器。
眼下,英偉達(dá)的設(shè)計(jì)部門有數(shù)千個這種單元庫。這些單元需要在新技術(shù)的框架下,遵循一套復(fù)雜的設(shè)計(jì)標(biāo)準(zhǔn),被重新設(shè)計(jì)。
第二個,是用強(qiáng)化學(xué)習(xí)模型來設(shè)計(jì)晶體管布局。
設(shè)計(jì)師們大部分都采用強(qiáng)化學(xué)習(xí)的辦法來放置晶體管。然而更重要的是,在晶體管放置后,一般都有很多設(shè)計(jì)規(guī)則上的錯誤,找到這些錯誤就像一款電子游戲一樣。
事實(shí)上,強(qiáng)化學(xué)習(xí)就擅長這個。一個很好的例子就是,強(qiáng)化學(xué)習(xí)在Atari電子游戲上的應(yīng)用。
所以,這就像是一款A(yù)tari電子游戲,只不過,這次是一款修正標(biāo)準(zhǔn)單元中設(shè)計(jì)上存在的錯誤的游戲。
通過強(qiáng)化學(xué)習(xí),英偉達(dá)的設(shè)計(jì)師可以篩查一遍出現(xiàn)的設(shè)計(jì)規(guī)則錯誤,然后修正它們。這樣,設(shè)計(jì)師就可以基本完成標(biāo)準(zhǔn)單元的設(shè)計(jì)工作了。
如下圖所示,92%的單元庫都可以用這個工具做好,不會存在任何設(shè)計(jì)規(guī)則上的錯誤或是電路上的錯誤。
此外,12%的單元比人工設(shè)計(jì)的單元都要小??偟膩碚f,從單元的復(fù)雜性上看,AI設(shè)計(jì)的單元和人工設(shè)計(jì)的一樣好。

這可以幫助設(shè)計(jì)師完成兩件事。
第一,應(yīng)用AI能極大地節(jié)省勞動力。沒有AI的話,大約需要一個10人小組耗時一年來建立一個新的技術(shù)庫。而如今,設(shè)計(jì)師可以用幾個GPU,跑幾天就行。
然后,人工只用介入剩下那8%AI未能完成的單元就好了。
在大多數(shù)情況下,設(shè)計(jì)師憑借AI往往能做出更好的設(shè)計(jì)。
所以說,不光省時省力,做出來的東西還更好。



































