(本文編譯自Semiconductor Engineering)
受AI相關(guān)工作負載變化的推動,新型處理器架構(gòu)正快速演進,但沒有任何一款處理器能實現(xiàn)全場景處理。協(xié)同處理在理論層面實現(xiàn)起來輕而易舉,在實際應(yīng)用中卻困難重重。
從未有過能勝任所有工作的處理器架構(gòu)。不起眼的中央處理器(CPU)五十年來一直是核心運算主力,但即便在個人計算機發(fā)展初期,人們就已意識到,部分工作負載需要更具針對性的處理能力。8086處理器便配有專屬輔助芯片——8087浮點協(xié)處理器。
音頻處理技術(shù)的發(fā)展與手機的問世,讓數(shù)字信號處理器(DSP)迅速成為不可或缺的輔助處理器。這類處理器發(fā)現(xiàn)數(shù)據(jù)傳輸是性能瓶頸,因此分離了數(shù)據(jù)流與指令流,同時增設(shè)了專用乘累加邏輯,以滿足快速執(zhí)行傅里葉變換的需求。后續(xù)其功能不斷拓展,開始支持編解碼、壓縮、調(diào)制、解調(diào)及差錯校正所需的各類操作。
計算機輔助設(shè)計(CAD)等應(yīng)用對圖形處理速度提出了更高要求,這不僅推動了商用游戲市場的興起,也促使圖形處理器(GPU)架構(gòu)迎來快速迭代。正是這類處理器,讓AI從基于規(guī)則的模式向基于模型的模式轉(zhuǎn)變,直至發(fā)展到如今的十年。
向新架構(gòu)遷移并非易事。Quadric首席營銷官Steve Roddy表示:“三十年的片上系統(tǒng)(SoC)發(fā)展歷程呈現(xiàn)出一個固定規(guī)律—— 耗與性能表現(xiàn)推動新型處理器品類誕生,而全可編程性則決定了哪類處理器能最終勝出。如果某一工作負載能在 CPU 的功耗和性能限制范圍內(nèi)運行,那它就會依托CPU實現(xiàn)。只有當(dāng)CPU處理效率低下時,架構(gòu)師才會推出專用化處理方案。”
AI的飛速發(fā)展也推動了硬件架構(gòu)的革新,其演進速度甚至超過了硬件的設(shè)計、驗證、實現(xiàn)和部署速度。“協(xié)處理器的關(guān)鍵問題本質(zhì)上在于工作負載,”ChipAgents首席執(zhí)行官 William Wang表示,“隨著AI系統(tǒng)的演進,工作負載正從簡短的內(nèi)核式推理任務(wù),轉(zhuǎn)向需持續(xù)運行的智能體工作負載,后者涉及推理循環(huán)、工具調(diào)用、內(nèi)存訪問以及多軟件組件間的交互。在這一背景下,挑戰(zhàn)不再在于構(gòu)建速度更快的計算模塊,而在于如何在通用可編程性和ASIC級能效之間取得平衡。”
許多公司曾嘗試推出新的處理器架構(gòu),這些架構(gòu)雖在理論層面表現(xiàn)亮眼,卻未能落地見效。“成功的協(xié)處理器通常能同時最大限度減少數(shù)據(jù)傳輸、軟件適配和驗證風(fēng)險的,”南安普頓大學(xué)AI和EDA研究員Simon Davidmann表示,“在AI領(lǐng)域,最好的協(xié)處理器并非峰值TOPS最高的,而是數(shù)據(jù)傳輸能耗最低的。”
架構(gòu)設(shè)計
在由多個異構(gòu)處理單元組成、為同一目標協(xié)同工作的計算環(huán)境中,通常會有一款處理器承擔(dān)協(xié)調(diào)核心的角色。“在任何情況下,都會有一個高級主機,通常是CPU,”Synopsys首席產(chǎn)品經(jīng)理Gordon Cooper表示,“其他所有組件都可以被視為協(xié)處理器。以大型語言模型的處理為例,主機可以完成部分工作,且主機通常也內(nèi)置了一定的運算能力,但它們會將大部分工作卸載到NPU上,因為對于大型語言模型或視覺語言模型來說,在NPU中進行數(shù)學(xué)運算效率要高得多。而整個運算流程的控制,均由主處理器發(fā)起。”
NPU發(fā)展迅速。Cadence公司AI IP和軟件產(chǎn)品營銷總監(jiān)Amol Borkar表示。“NPU的設(shè)計初衷是運行AI模型,早期這類處理器多為高度專用的固定功能硬件模塊。但如今的AI模型日趨復(fù)雜,運算過程遠不止乘累加計算。廠商會在芯片中集成小型硬件單元,為非乘累加運算或激活函數(shù)運算提供支持,這一設(shè)計的優(yōu)勢在于能讓NPU的靈活性略有提升。但我們也發(fā)現(xiàn),每當(dāng)AI模型出現(xiàn)新的網(wǎng)絡(luò)層、新的算子,或是Llama、Claude等模型推出新版本時,行業(yè)都會面臨新的挑戰(zhàn)——如果這些新增硬件單元并非為適配這些新算子設(shè)計,最終會導(dǎo)致整個網(wǎng)絡(luò)模型無法運行。”
Arm的新型AGI CPU芯片采用了截然不同的方法,它大幅提升了CPU的每瓦性能。Arm首席執(zhí)行官Rene Haas表示:“隨著智能體AI的普及,所有實現(xiàn)這一目標所需的工作都受CPU性能限制。數(shù)據(jù)中心不堪重負。這些用于生成Token、成本高昂的加速器,如今需要通過云網(wǎng)絡(luò)將生成的Token回傳,由此形成了巨大的算力瓶頸,這也意味著市場對CPU的需求將持續(xù)攀升。”
![]()
圖1:數(shù)據(jù)中心面臨的瓶頸。
(圖源:Arm)
這又為這場博弈增添了又一個變量。處理器和協(xié)處理器的定義變得越來越復(fù)雜。“如今的協(xié)處理架構(gòu)涵蓋了緊耦合單元、松耦合加速器和基于Fabric的分布式系統(tǒng),”Arteris產(chǎn)品管理和市場營銷副總裁Andy Nightingale表示,“緊耦合設(shè)計受益于低延遲、共享內(nèi)存和更簡單的可編程性,使其能夠高效地處理小規(guī)模或?qū)ρ舆t敏感的工作負載。但其會因資源競爭和一致性開銷問題,難以實現(xiàn)算力擴展。松耦合方法通常以芯粒形式實現(xiàn),且能針對訓(xùn)練、推理、網(wǎng)絡(luò)等不同功能做專用化設(shè)計,卻會帶來更高的延遲,同時大幅增加硬件和軟件層面的協(xié)同復(fù)雜度。基于Fabric的架構(gòu)則力求平衡,既支持算力的可擴展與資源的動態(tài)共享,卻對互連提出了極高要求,也帶來了顯著的系統(tǒng)級復(fù)雜度。”
RISC-V生態(tài)系統(tǒng)正嘗試創(chuàng)造一種新可能,即處理器和協(xié)處理器的融合。“對于加速器和高度專用的處理器架構(gòu)而言,RISC-V指令集架構(gòu)具有獨特的優(yōu)勢,”Breker Verification Systems首席執(zhí)行官Dave Kelf表示,“因此,我們看到基于RISC-V的加速器正在涌現(xiàn),這類加速器將處理單元集成于自身架構(gòu)中,從而消除了獨立單元之間控制和數(shù)據(jù)傳輸?shù)拈_銷。對于低功耗應(yīng)用,僅將所需的處理器單元與加速器結(jié)合使用即可顯著節(jié)省功耗。這對于AI設(shè)備應(yīng)用而言似乎最為有效,因為標準化的軟件棧可以直接應(yīng)用于加速器本身。這是RISC-V帶來的一種新范式,也可能成為這款開放指令集的未來發(fā)展方向。”
這一思路適用于向CPU添加功能,或向NPU添加更通用的處理能力。“處理器之間的切換會產(chǎn)生時間和傳輸損耗,”CadenceAIIP產(chǎn)品營銷總監(jiān)Jason Lawley表示,“我們需要在明確無法實現(xiàn)CPU全部功能的前提下,權(quán)衡分配給矢量處理和標量處理的芯片面積。這也是為何我們能看到小型RISC-V核心被部署在離MAC陣列更近的位置。這些小型RISC-V核心無法完成大型CPU的所有運算工作,軟件開發(fā)人員必須找到合理的工作負載拆分方式,以實現(xiàn)運算效率的最大化。”
要了解全貌,還需將目光投向純電子領(lǐng)域之外。“還出現(xiàn)了其他類型的處理器,例如光子AI加速器,”是德科技高速數(shù)字產(chǎn)品組合經(jīng)理Jan van Hese表示,“這類處理器具有巨大的優(yōu)勢,盡管設(shè)計難度較高,但一旦實現(xiàn)商用,便能實現(xiàn)超高運算速度與超低功耗。”
各類處理器的整合架構(gòu)也處于動態(tài)演變中。“談到協(xié)處理器,運算任務(wù)的執(zhí)行載體始終在不斷變化,這會影響數(shù)據(jù)的傳輸方式和存儲位置,”Cadence的Lawley表示,“目前很多計算任務(wù)都由GPU和NPU完成,而隨著AI技術(shù)的日趨成熟,尤其是智能體的發(fā)展,人們會發(fā)現(xiàn)CPU需完成更多的運算工作。過去通常是一個CPU搭配一個大型MAC陣列,但現(xiàn)在,對于一定數(shù)量的MAC,就需要配置相應(yīng)的CPU,因為需要額外的計算能力。以NPU設(shè)計師的身份來看,會將NPU看作核心,其他都是協(xié)處理器;而站在CPU設(shè)計者的角度,其他都是協(xié)處理器。始終會存在各類專用功能模塊,無法全部集成在單一處理器中,而這正是協(xié)處理器誕生的契機。”
回顧歷史,或許能預(yù)見未來的融合趨勢。“專用處理器通過將原生數(shù)據(jù)類型和計算原語與工作負載相匹配來提高效率,”Quadric公司的Roddy表示,“但僅憑專業(yè)化是不夠的。緊密耦合的‘輔助’加速器并不能真正解放CPU。分區(qū)執(zhí)行會增加互連流量、延遲和功耗。系統(tǒng)級效率取決于處理器的獨立運行能力。歷史也印證了這一點。早期的圖形引擎均為外掛式加速器。真正的算力擴展性只有在全可編程GPU出現(xiàn)并與CPU解耦后才得以實現(xiàn)。DSP領(lǐng)域也經(jīng)歷了同樣的轉(zhuǎn)變。AI似乎正在跨越同樣的界限——從固定功能加速器走向完全可編程的獨立AI處理器。除了功耗和性能的提升之外,獨立運行的架構(gòu)還能簡化系統(tǒng)集成、驗證、建模流程,以及基于芯粒的算力擴展過程。”
各類架構(gòu)方案均需做出取舍。“與CPU鄰近的加速方案更容易編程,也更容易集成到現(xiàn)有的軟件流程中,但在持續(xù)每瓦性能方面往往難以勝出,”南安普頓大學(xué)的Davidmann表示,“GPU式的引擎靈活且強大,卻需要龐大的軟件棧支撐,且會產(chǎn)生高昂的數(shù)據(jù)傳輸成本。專用加速器通常能效最優(yōu),但前提是編譯器、運行時環(huán)境與模型適配度足夠成熟,避免硬件淪為孤立的專用模塊。異構(gòu)子系統(tǒng)則介于兩者之間。它們通常是最佳的系統(tǒng)解決方案,但也是對架構(gòu)要求最高的方案。”
面臨挑戰(zhàn)
僅關(guān)注處理架構(gòu)可能會忽略全局。新思科技的Cooper表示,“人們總傾向于將其視作純數(shù)學(xué)問題,但核心實則是數(shù)據(jù)移動,尤其是面對擁有海量參數(shù)的大語言模型時。關(guān)鍵在于如何高效地將數(shù)據(jù)傳輸至指定節(jié)點、完成處理或相關(guān)操作,且無需反復(fù)遷移數(shù)據(jù)。問題的核心是數(shù)據(jù)流設(shè)計,必須在算力與數(shù)據(jù)帶寬之間找到精準平衡。如果數(shù)據(jù)流供應(yīng)不足,導(dǎo)致MAC處于數(shù)據(jù)饑餓狀態(tài),那么單純增加MAC數(shù)量毫無意義,算力與帶寬的平衡不可或缺。”
這一切都始于系統(tǒng)級規(guī)劃。“設(shè)計周期需要左移,”是德科技的van Hese表示,“理想狀態(tài)是同時芯片級、封裝級和系統(tǒng)級的設(shè)計工作,各類核心模塊之間必須進行協(xié)同設(shè)計,才能保障整個系統(tǒng)的正常運行。”
分布式處理雖能簡化部分環(huán)節(jié),卻會讓其他環(huán)節(jié)變得更為復(fù)雜。“芯粒與異構(gòu)協(xié)處理器雖為生態(tài)帶來了更高的開放性與靈活性,但其集成挑戰(zhàn)遠不止基礎(chǔ)的互操作性問題,”Arteris公司的Nightingale表示,“UCIe和CXL之類的標準雖解決了物理層與協(xié)議層的兼容性問題,卻未能攻克系統(tǒng)級的行為集成難題。不同廠商在流量管理、內(nèi)存排序、服務(wù)質(zhì)量要求和延遲容忍度等方面的設(shè)計差異,會導(dǎo)致各組件組合后出現(xiàn)性能不可預(yù)測的問題。此時,一套統(tǒng)一的互連層架構(gòu)變得至關(guān)重要,它不僅要實現(xiàn)各組件的物理連接,更要保障跨組件的系統(tǒng)行為可預(yù)測。若缺少這一架構(gòu),整個生態(tài)可能陷入技術(shù)層面兼容、但實際工作負載下運行不可靠的困境。”
可擴展性
在AI相關(guān)模型和任務(wù)的研發(fā)速度放緩之前,硬件的發(fā)展始終會落后于軟件的需求。Cooper表示:“一款芯片的設(shè)計耗時一年,集成至產(chǎn)品又需一年,且投產(chǎn)后還需在市場中服役數(shù)年。對于SoC設(shè)計而言,如何實現(xiàn)未來兼容,是一項頗具挑戰(zhàn)的課題。”
為未來需求做的設(shè)計考量,往往需要在當(dāng)下付出成本。Borkar表示:“如果我們開發(fā)的專用硬件與當(dāng)前所需的工作負載實現(xiàn)精準緊耦合,能效或許能大幅提升。在既定周期內(nèi),我可對這款硬件進行全方位的調(diào)優(yōu)與優(yōu)化,實現(xiàn)性能最大化。但顯然,這種設(shè)計的隱患在于,一旦客戶調(diào)整技術(shù)規(guī)格,或是推出新的網(wǎng)絡(luò)模型,硬件將完全無法適配,陷入極為被動的局面。”
每個硬件開發(fā)人員都必須找到合適的平衡點。ChipAgents公司的Wang表示。“架構(gòu)設(shè)計既需要足夠的專用化設(shè)計以保障功耗與性能表現(xiàn),又需要具備足夠的靈活性,以適配快速演進的AI工作負載。這使得系統(tǒng)級調(diào)度、數(shù)據(jù)移動與軟件集成,與原始計算吞吐量同等重要,而這正是智能體式AI能夠發(fā)揮作用的領(lǐng)域——助力工程師權(quán)衡各類設(shè)計取舍,應(yīng)對異構(gòu)協(xié)處理系統(tǒng)日益增長的復(fù)雜度。”
在考慮面向未來的應(yīng)用時,需要考慮的不僅僅是運算本身。“最初的NPU是為處理CNN工作負載而設(shè)計的,”Cooper表示,“矩陣乘法非常簡單直接。但隨著Transformer的出現(xiàn),情況就變得復(fù)雜一些。TOP運算的重要性降低了,因為它不再僅僅是乘加運算,還需要處理張量網(wǎng)絡(luò)的其他問題,隨后大語言模型問世,系統(tǒng)開始受限于內(nèi)存帶寬——此前算力與帶寬的平衡被徹底打破,大語言模型的處理工作完全受內(nèi)存制約。再到如今的混合模式與多模態(tài)模型,視覺處理任務(wù)再次成為核心需求,不同的模型組合方式對應(yīng)著不同的設(shè)計參數(shù),而這些處理單元都可被稱作NPU。”
算子優(yōu)化或許只是相對簡單的環(huán)節(jié)。Borkar稱:“若將網(wǎng)絡(luò)模型拆解為一系列算子,多數(shù)客戶的算子需求中,有很大一部分是通用的。對于這類通用算子,能夠?qū)崿F(xiàn)高性能、高能效的硬件支持。而問題往往出在那些未納入前期規(guī)劃的算子上,需要找到適配的運行方式,這也是能效問題頻繁出現(xiàn)的環(huán)節(jié)。”
數(shù)據(jù)類型的支持同樣面臨這一問題。Cooper表示:“硬件可支持多種現(xiàn)有數(shù)據(jù)類型,但隨著新數(shù)據(jù)類型不斷涌現(xiàn),就需要專門的運算引擎來兼容未來可能出現(xiàn)的所有數(shù)據(jù)類型。在某個節(jié)點上,必須通過提升硬件靈活性來實現(xiàn)產(chǎn)品的未來兼容設(shè)計,但這必然會帶來芯片面積的損耗。而NPU的設(shè)計目標,是在保持可編程性的同時,實現(xiàn)能效的最大化。”
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.