Cerebras晶片給 Mistral 的 Le Chat 帶來了超快的推理功能。前幾天,Mistral對他們的 Le Chat 網頁介面(就是他們的 ChatGPT 版本)進行了一次大升級,其中一個特別厲害的功能就是效能的提升。
其實,這個效能提升是因為他們把模型放在了 Cerebras 的系統上執行,官方文件說:
Cerebras Inference 是全球最快的 AI 推理提供商,在Llama 3.3 70B、Llama 3.1 405B以及最近的DeepSeek R1 70B中創下了效能記錄。 |
Cerebras 目前在推理效能上的無敵表現:
快速推理極大地改善了聊天和程式碼生成的使用者體驗——這是當今最流行的兩個用例。在上面的例子中,Mistral Le Chat 立即完成了編碼提示,而其他流行的 AI 助手則需要長達 50 秒才能完成。
什麼是Cerebras 晶片?
Cerebras 晶片是由 Cerebras Systems 公司開發的一種專為人工智慧和高效能運算設計的處理器。
Cerebras 晶片採用晶圓級設計,將整個晶圓作為單一晶片,面積遠超傳統晶片,整合了更多電晶體和計算核心。
晶片整合大容量高頻寬記憶體,減少資料傳輸延遲,提升計算效率。
設計上注重低延遲,特別適合實時處理任務。
Cerebras CS-3 與 Nvidia B200:2024 款 AI 加速器對比
Cerebras CS-3
CS-3在Cerebras AI Day上釋出,搭載了第三代Cerebras晶圓級引擎,擁有4萬億個電晶體。這個巨大的晶片包含90萬個AI核心,透過片上結構連線,提供125 petaflops的AI計算效能。CS-3支援12TB到1.2PB的外部儲存,能夠輕鬆訓練萬億引數模型。它的功耗為23kW,採用15U伺服器設計,可在本地或雲端使用。
Nvidia DGX B200
Nvidia B200“Blackwell”在GTC 2024上釋出,是H100 GPU的繼任者。B200由兩個透過NVLink連線的GPU晶片組成,總共有2080億個電晶體,提供4.4 petaflops的FP16 AI計算能力,並配備192GB記憶體。DGX B200有兩種伺服器形式:10U伺服器配備8個B200 GPU,提供36 petaflops的計算能力和1.5TB記憶體,功耗為14.3 kW;全機架解決方案DGX NVL72透過NVLink連線72個B200 GPU,提供360 petaflops的計算能力,功耗為120kW。B200產品預計在2024年第四季度發貨。
計算效能
CS-3憑藉90萬個專用AI核心,提供125 petaflops的FP16 AI計算效能。相比之下,單個B200 GPU提供4.4 petaflops,8個GPU的DGX B200提供36 petaflops。因此,單個CS-3的效能相當於約3.5個DGX B200伺服器,但佔用空間更小,功耗更低,程式設計模型也更簡單。
記憶體
訓練大型AI模型時,記憶體容量是關鍵。CS-3採用獨特的記憶體架構,支援12TB到1.2PB的外部儲存,遠超B200 GPU的192GB記憶體。例如,1.2PB的CS-3可以訓練24萬億引數的模型,記憶體容量是B200的6000倍,DGX B200的700倍,NVL72的80倍。
互連頻寬
CS-3透過晶圓上佈線連線90萬個核心,提供27 PB/s的總頻寬,遠超DGX B200的14.4TB/s NVLink頻寬。即使與全機架NVL72相比,CS-3的頻寬也高出200倍。
能效
CS-3的功耗為23kW,DGX B200為14.3kW。但CS-3的效能更高,每瓦效能提升2.2倍,電力成本減少一半以上。
總結
Cerebras CS-3和Nvidia DGX B200都是強大的AI訓練平臺。CS-3在記憶體容量、計算效能和互連頻寬上具有顯著優勢,尤其適合需要高效訓練大型AI模型的團隊。CS-3現已上市,能夠滿足大規模AI訓練的需求。
為什麼訓練效能好的晶片在推理效能上卻不太好?
推理是完全可並行的,它只是矩陣乘法,可以在非常專業的晶片上完成,包括放棄通常的二進位制邏輯結構的模擬晶片。
而訓練是一個並行化的瓶頸,因為它需要反向傳播,這是一種鏈式規則微積分運算,而且更為複雜,因此它需要更傳統的架構。
神經網路NN是由很多函式串聯起來的,比如 f(g(h(x)))。在推理(和訓練的前向傳遞)時,你是從內到外計算的,所以先算 h(x),然後用它算 g,再算 f。
在反向傳遞時,計算圖的方向相反,你先對 f 求導,然後對 g,最後對 h。
當然,訓練時也有很多並行化的方式。你可以按批次維度並行化,也可以把模型拆分到不同的 GPU 上,用流水線並行等等。
雖然你需要在某個時候同步並累積梯度,但除此之外,前向和反向傳遞其實很像。比如,線性層的反向傳遞其實就是兩個矩陣乘法:一個用來計算權重的導數,另一個用來計算輸入的導數,然後把這個梯度傳給上一層繼續計算。
所以,雖然有辦法在某種程度上並行化訓練,但計算導數顯然比進行大量乘法更復雜……
NN 的前向傳遞非常簡單,可以在專門的模擬硬體上完成,但梯度下降則不能。這就是為什麼推理可以變得更加高效,而訓練是瓶頸。
此外,訓練的後向傳遞需要記憶體來儲存和檢索所有啟用和梯度,而對於已經訓練過的模型的推理不一定需要以可訪問的方式儲存該資訊,它只需要將訊號向前傳遞,這就是為什麼可以使用模擬硬體或更簡單的專用架構進行推理。