2024年3月,12 000多名觀眾急切地坐進了美國加利福尼亞州圣何塞的一座體育館?!拔蚁M銈円庾R到,這不是一場音樂會。”黃仁勛開玩笑道。他是位于附近圣克拉拉的芯片制造公司英偉達(NVIDIA)的首席執(zhí)行官。
在接下來的半個小時里,黃仁勛向聽眾介紹了圖形處理器(GPU)的最新訊息,GPU是其公司的標志性計算機芯片,也是過去十年里人工智能(AI)進步的關(guān)鍵。黃仁勛舉起該公司2022年的產(chǎn)品,霍珀“超級芯片”(Hopper)?!盎翮旮淖兞耸澜??!彼f。他吊人胃口地停頓片刻,隨即展示出另一塊便利貼大小、閃耀的黑色長方形物體:“而這是布萊克韋爾(Blackwell)?!迸_下一片歡呼。
早在2022年,霍珀芯片就在機器學習表現(xiàn)基準測試(MLPerf)中大獲全勝,從圖像分類到語音識別,它在各個類別中都擊敗了競爭對手。MLPerf由一系列測試組成,有時被稱為人工智能界的奧林匹克競賽?;翮晷酒σ簧鲜校切┫M麨樽约胰斯ぶ悄茉鲂У墓揪蛯⑵湔J定為了首選芯片。如今,英偉達承諾,布萊克韋爾芯片在處理特定問題時的速度將比上一代產(chǎn)品快數(shù)倍。英偉達加速計算部門產(chǎn)品營銷總監(jiān)戴夫·薩爾瓦托(Dave Salvator)表示:“我認為布萊克韋爾芯片將通過更強大的性能以及芯片之間更高效的通信,將我們的人工智能性能提升到一個新的水平?!?/p>
在人們對人工智能的影響感到喜憂參半的同時,人工智能芯片市場仍在持續(xù)增長。目前,英偉達提供了80%以上的人工智能芯片;在2023年,它售出了55萬塊霍珀芯片。這些功能強大的芯片每塊至少售價3萬美元(約合22萬人民幣),主要用于數(shù)據(jù)中心而非個人電腦。2024年,英偉達的市值飆升至2萬多億美元(約合14萬億人民幣),成為全球市值第三高的公司,排在亞馬遜和谷歌母公司字母表(Alphabet)等巨頭之前。
英偉達的布萊克韋爾芯片是硬件開發(fā)浪潮的一部分,而這股浪潮是各家公司努力跟上并支持人工智能革命的結(jié)果。在過去的十年中,人工智能的大部分進步與其說是來自巧妙的編碼技巧,不如說是來自“越大越好”這一簡單的原則。大語言模型越來越多地使用更大的數(shù)據(jù)集進行訓練,也越來越需要更強的計算能力。據(jù)估計,美國公司開放人工智能(OpenAI)的最新模型GPT-4所需的算力是其前代模型的100倍。
元平臺(Meta)等公司已經(jīng)建立了以英偉達GPU為基礎(chǔ)的數(shù)據(jù)中心。包括谷歌、IBM,以及眾多規(guī)模較小的公司在內(nèi)的一系列其他公司,則都設(shè)計出了自家的人工智能芯片;元平臺目前也在開發(fā)自己的芯片。與此同時,研究人員也在嘗試各種芯片設(shè)計,其中一些是針對小型設(shè)備進行的優(yōu)化設(shè)計。隨著人工智能的應(yīng)用場合不再局限于云計算中心,轉(zhuǎn)而進入移動設(shè)備,意大利米蘭理工大學的計算機工程師克里斯蒂娜 · 西爾瓦諾(Cristina Silvano)表示:“我認為GPU已經(jīng)不夠用了?!?/p>
這些芯片都有一個共同點:它們采用了包括并行計算、更易訪問的內(nèi)存和數(shù)字速記等各種技巧,以幫助它們克服傳統(tǒng)計算的速度障礙。
芯片的更新?lián)Q代
過去十年的深度學習革命在很大程度上得益于對傳統(tǒng)計算主力——中央處理器(CPU)——的突破。
CPU本質(zhì)上是一臺微小的命令執(zhí)行機器。加拿大多倫多大學的計算機工程師沃恩 · 貝茨(Vaughn Betz)解釋道:“簡單來講,它會查看一條指令,然后問自己,‘這條指令是要我做什么?’”在最基本的層面上,CPU通過翻轉(zhuǎn)晶體管來執(zhí)行指令,晶體管是簡單的電開關(guān),用開來表示“1”,關(guān)來表示“0”。僅通過這種二進制操作,晶體管就可以執(zhí)行非常復(fù)雜的計算。
CPU的功率和效率主要取決于晶體管的尺寸——較小的晶體管翻轉(zhuǎn)速度更快,而且可以更密集地封裝在芯片上。如今,最先進的晶體管僅有45×20 納米大小,不比它的原子構(gòu)件大多少。頂級CPU每平方毫米可封裝一億多個晶體管,每秒可執(zhí)行約一萬億次浮點運算。
自20世紀70年代以來,CPU的性能呈指數(shù)級增長。隨著晶體管的縮小,它們在芯片上的密度每兩年翻一番(這一趨勢被稱為摩爾定律),而更小的晶體管速度也變得更快(這是登納德縮放定律造成的結(jié)果)。CPU的進步太過迅猛,以至于定制設(shè)計其他類型的芯片變得毫無意義。加州大學洛杉磯分校的計算機工程師叢京生(Jason Cong)表示:“當你設(shè)計出一個特殊電路時,CPU的速度已經(jīng)比之前快了兩倍?!钡?005年左右,更小的晶體管不再變得更快,而在過去幾年中,工程師開始擔憂無法將晶體管做得更小,因為這些設(shè)備漸漸觸及基本物理定律的極限。
CPU進展的放緩促使計算機工程師開始認真考慮其他類型的芯片。GPU的早期版本早在20世紀70年代末就已出現(xiàn),其設(shè)計目的是為視頻游戲執(zhí)行重復(fù)計算,例如盡快渲染屏幕上像素的顏色。與CPU按順序處理指令不同,GPU能夠并行處理更多的指令。
一般來說,CPU有幾個功能強大的“核心”來執(zhí)行計算。每個獨立的處理單元接收指令,并由多個緩存提供支持,這些緩存可在短期內(nèi)存儲數(shù)據(jù)。這種架構(gòu)使得CPU非常適合復(fù)雜的計算。相比之下,GPU擁有數(shù)百或數(shù)千個較小的核心,每個核心配備的緩存等提供支持的輔助系統(tǒng)較少。大量的較小核心使得GPU能夠并行執(zhí)行許多簡單、重復(fù)的計算,速度遠快于CPU。(GPU所使用的這種不同計算方式需要不同的計算機代碼。薩爾瓦托指出,英偉達從事代碼編寫的軟件工程師數(shù)量是其硬件工程師數(shù)量的兩倍。)
多倫多大學的計算機科學家杰弗里·辛頓(Geoffrey Hinton)是神經(jīng)網(wǎng)絡(luò)(受大腦啟發(fā)的算法)的早期倡導(dǎo)者之一。2012年,他向自己當時的學生亞歷克斯·克里澤夫斯基(Alex Krizhevsky)發(fā)起挑戰(zhàn),希望對方贏得一年一度的圖網(wǎng)競賽(ImageNet),該賽的目標是訓練計算機正確識別日常物體的圖像。當時,使用CPU的程序最多只能達到75%的準確率??死餄煞蛩够庾R到,使用GPU訓練的神經(jīng)網(wǎng)絡(luò)人工智能可能會做得更好,因為機器學習的基礎(chǔ)是簡單的重復(fù)計算。
克里澤夫斯基和他的合作者使用了兩塊GPU來訓練他們的神經(jīng)網(wǎng)絡(luò),即亞歷克斯網(wǎng)(AlexNet)。他們的人工智能擁有6000萬個參數(shù)(即人工智能模型用來進行預(yù)測的內(nèi)部變量),這在當時是史無前例的。AlexNet在比賽中脫穎而出,準確率高達85%,它能夠可靠地區(qū)分相似的圖像(如豹和美洲豹),這一能力令世人驚嘆。一兩年后,圖網(wǎng)競賽的所有參賽者都開始使用GPU;自那時起,人工智能的研究者就開始大量地使用這些芯片。
盡管GPU和CPU一樣,仍然受到晶體管的限制,但它們的并行計算能力使它們能夠加快人工智能執(zhí)行任務(wù)的速度。為了訓練擁有1750億個參數(shù)的大語言模型GPT-3,OpenAI的研究人員不得不連續(xù)一個月運行1024塊GPU,耗資數(shù)百萬美元。這些GPU總共執(zhí)行了1023次浮點運算。而在同類CPU上,同樣的訓練需要花費數(shù)百到數(shù)千倍的時間。貝茨說:“有了更大的算力,你就可以訓練更大的網(wǎng)絡(luò),這樣它們就會越來越好?!崩?,2023年3月發(fā)布的GPT-4的參數(shù)量達到了驚人的1.8萬億個,比上一代模型增加了10倍。
雖然GPU在人工智能革命中起到了關(guān)鍵作用,但它們并不是唯一的主角。隨著人工智能應(yīng)用的普及,人工智能芯片也在不斷涌現(xiàn)。
芯片的百花齊放
有時,給芯片輸入指令的時間并不充?!,F(xiàn)場可編程邏輯門陣列(FPGA)的發(fā)明使得計算機工程師可以對芯片電路進行編程,讓其遵循特定指令,而無需外部指令。貝茨表示:“像CPU或GPU這樣的芯片必須等待外部指令,而FPGA可以直接執(zhí)行?!?/p>
對叢京生來說,F(xiàn)PGA“就像一盒樂高積木”。無論是洗衣機傳感器,還是用于引導(dǎo)自動駕駛汽車的人工智能,工程師都可以將FPGA電路逐一構(gòu)建成他們所能想象的任何設(shè)計。然而,與GPU等電路不可調(diào)整的人工智能芯片相比,F(xiàn)PGA的速度較慢,效率也較低。包括阿爾特拉(Altera,英特爾在圣何塞的子公司)在內(nèi)的公司都將FPGA用于包括醫(yī)學成像在內(nèi)的各種人工智能應(yīng)用;研究人員發(fā)現(xiàn)它們在處理粒子對撞機數(shù)據(jù)等小眾任務(wù)時非常有用。西爾瓦諾說,F(xiàn)PGA的易編程性也使其非常適用于原型設(shè)計。她經(jīng)常在開始著手煩瑣的芯片制造過程之前,先用FPGA設(shè)計人工智能芯片。
西爾瓦諾還致力于開發(fā)體積更小的人工智能芯片,提高它們的計算效率,從而改進移動設(shè)備。她說,要是能在手機上加裝一塊完整的GPU自然最好,但能源成本和價格讓這件事變得不可行。精簡的人工智能芯片可以通過處理人工智能應(yīng)用的繁瑣任務(wù)(如圖像識別)來輔助手機的CPU,而無須向云端發(fā)送數(shù)據(jù)。
人工智能芯片處理的最費力的工作可能是乘法運算。2010年,谷歌遇到了一個問題:公司希望為大量的日常用戶進行語音轉(zhuǎn)錄。如果要訓練人工智能自動處理這項工作,除卻其他艱巨的任務(wù)外,還需要對大量數(shù)字進行乘法運算。“如果只使用CPU,我們的服務(wù)器數(shù)量就必須翻倍,”谷歌的計算機工程師諾曼·尤派(Norm Jouppi)說,“這聽起來不是什么好主意?!庇谑?,尤派領(lǐng)導(dǎo)開發(fā)了一種名為張量處理器(TPU)的新型芯片,作為谷歌人工智能的運行平臺。
TPU專為支撐人工智能的算術(shù)運算而設(shè)計。當TPU接收到一條指令時,它可以執(zhí)行超過十萬次運算,而非僅執(zhí)行一次運算。(TPU的數(shù)學多任務(wù)處理能力是專門設(shè)計的電路和軟件的結(jié)果;如今,許多為人工智能應(yīng)用設(shè)計的GPU——如布萊克韋爾芯片——也具備類似的能力。)TPU僅需有限指令就能執(zhí)行大量運算的能力令谷歌得以為其許多人工智能項目增速,而不僅僅限于語音轉(zhuǎn)錄服務(wù)。
為了進一步加速計算,許多人工智能芯片(如TPU和GPU)都使用了一種數(shù)字速記法。CPU通常以64位格式記錄數(shù)字,即64個0或1的槽位,每一個槽位都需要表示任何給定的數(shù)字。使用位數(shù)更少的數(shù)據(jù)格式可能會降低計算的精度,因此通用芯片都使用64位格式。
但是,貝茨指出,如果你能減少精度,“那么硬件就會變得更簡單、更小巧、功耗更低”。例如,列出DNA序列原則上只需要2位格式,因為遺傳信息只有四種可能性:堿基A、T、G或C(分別表示為00、01、10或11)。叢京生設(shè)計的一種使用2位格式比對基因組數(shù)據(jù)的FPGA芯片,比使用64位格式的同類CPU速度快了28倍。為了加速機器學習的計算速度,工程師降低了芯片的精度,TPU依賴于專門的16位格式。對于諸如布萊克韋爾這樣的最新一代芯片,用戶甚至可以從4位到64位的一系列格式中選擇最適合所需計算精度的格式。
芯片的前景廣大
人工智能芯片的另一個設(shè)計特點是:避免記憶過多。在執(zhí)行計算的微處理器和存儲數(shù)據(jù)的存儲器之間來回傳輸數(shù)據(jù)非常耗時耗能。為了解決這個問題,許多GPU在單個芯片上直接連接了大量內(nèi)存——英偉達的布萊克韋爾芯片擁有大約200GB的內(nèi)存。當人工智能芯片安裝在服務(wù)器中時,它們還可以共享內(nèi)存,使單個芯片之間的聯(lián)網(wǎng)變得更加容易,也減少電力消耗。谷歌將近9000個TPU連接在了一個“集群”(pod)中。
這么多電子在電路中移動是個巨大的負擔,其耗電量不是個小問題。準確的數(shù)據(jù)很難確定,但據(jù)估計,GPT-3的訓練消耗了1300兆瓦時(MWh)的電力。(英國一個普通家庭的年耗電量約為3兆瓦時。)即使在訓練之后,使用人工智能應(yīng)用程序仍然會消耗大量能源。盡管芯片設(shè)計的進步可以提高效率,但隨著模型規(guī)模的不斷擴大,人工智能的能源成本仍在逐年增加。
GPU等人工智能芯片的興起并不意味著CPU的終結(jié)。相反,即使是最基本的芯片類型之間的界限也在變得越來越模糊——現(xiàn)代CPU在并行計算方面比早期版本更勝一籌,而GPU也變得比過去更加多才多藝?!按蠹叶荚诨ハ嘟梃b對方的技術(shù)?!必惔谋硎?。英偉達的布萊克韋爾芯片的某個版本直接將GPU與CPU配對使用,世界上最強大的超級計算機——位于美國田納西州橡樹嶺國家實驗室的“前沿”(Frontier)——則依賴于CPU和GPU的混合使用。
鑒于過去十年的變化速度,研究人員表示很難預(yù)測芯片的未來:未來可能會出現(xiàn)使用光而非電子的光學芯片或是量子計算芯片。與此同時,一些人表示,讓公眾更多地了解人工智能硬件有助于揭開這個領(lǐng)域的神秘面紗,并糾正大眾對人工智能無所不能的誤解。西爾瓦諾說:“你可以更好地向人們傳達,人工智能并不是什么魔法?!?/p>
尤派說,從根本上講,人工智能只是一堆電線和電子,不太可能占領(lǐng)世界?!澳憧梢灾苯影蔚綦娫??!彼f。他希望硬件能夠不斷改進,這反過來將有助于加速人工智能在科學領(lǐng)域的應(yīng)用?!拔覍Υ顺錆M熱情,”尤派說,“我對未來的發(fā)展充滿期待?!?/p>
資料來源Nature