在不到一年的時間裡,生成式人工智慧透過OpenAI 的ChatGPT(一種基於Transformer 的流行演算法)獲得了全球聲譽和使用。基於Transformer 的演算法可以學習物件不同元素(例如句子或問題)之間的複雜交互,並將其轉換為類似人類的對話。
在Transformer 和其他大型語言模型(LLM) 的引領下,軟體演算法取得了快速進展,而負責執行它們的處理硬體卻被拋在了後面。即使是最先進的演算法處理器也不具備在一兩秒的時間範圍內詳細闡述最新ChatGPT 查詢所需的效能。
為了彌補性能不足,領先的半導體公司建立了由大量最好的硬體處理器組成的系統。在此過程中,他們權衡了功耗、頻寬/延遲和成本。此方法適用於演算法訓練,但不適用於部署在邊緣設備上的推理。
功耗挑戰
雖然訓練通常基於產生大量資料的fp32 或fp64 浮點演算法,但它不需要嚴格的延遲。功耗高,成本承受能力高。
相當不同的是推理過程。推理通常在fp8 演算法上執行,該演算法仍會產生大量數據,但需要關鍵的延遲、低能耗和低成本。
模型訓練的解決方案來自於計算場。它們運行數天,使用大量電力,產生大量熱量,並且獲取、安裝、操作和維護成本高昂。更糟的是推理過程,碰壁並阻礙了GenAI 在邊緣設備上的擴散。
邊緣產生人工智慧推理的最新技術
成功的GenAI 推理硬體加速器必須滿足五個屬性:
大多數現有的硬體加速器可以滿足部分要求,但不能滿足全部要求。老牌CPU是最糟糕的選擇,因為執行速度令人無法接受;GPU 在高功耗和延遲不足的情況下提供相當快的速度(因此是訓練的選擇);FPGA 在性能和延遲方面做出了妥協。
完美的設備將是定制/可編程系統單晶片(SoC),旨在執行基於變壓器的演算法以及其他類型演算法的發展。它應該支援合適的記憶體容量來儲存法學碩士中嵌入的大量數據,並且應該可編程以適應現場升級。
有兩個障礙阻礙了這個目標的實現:記憶體牆和CMOS 裝置的高能耗。
記憶體牆
人們在半導體發展歷史的早期就觀察到,處理器性能的進步被記憶體存取的缺乏進步所抵消。
隨著時間的推移,兩者之間的差距不斷擴大,迫使處理器等待記憶體傳送資料的時間越來越長。結果是處理器效率從完全100% 利用率下降(圖1)。
為了緩解效率的下降,業界設計了一種多層分層記憶體結構,採用更快、更昂貴的記憶體技術,靠近處理器進行多層緩存,從而最大限度地減少較慢主記憶體甚至較慢外部記憶體的流量(圖2)。
CMOS IC 的能耗
與直覺相反,CMOS IC 的功耗主要由資料移動而非資料處理決定。根據馬克霍洛維茨教授領導的史丹佛大學研究(表1),記憶體存取的功耗比基本數位邏輯計算消耗的能量高出幾個數量級。
加法器和乘法器的功耗從使用整數運算時的不到一皮焦耳到處理浮點運算時的幾皮焦耳。相較之下,在DRAM 中存取資料時,存取高速緩存中的資料所花費的能量會躍升一個數量級,達到20-100 皮焦耳,並且會躍升三個數量級,達到超過1,000 皮焦耳。
GenAI 加速器是以資料移動為主導的設計的典型例子。
記憶體牆和能耗對延遲和效率的影響
生成式人工智慧處理中的記憶體牆和能耗的影響正變得難以控制。
幾年之內,為ChatGPT 提供支援的基礎模型GPT 從2019 年的GPT-2 發展到2020 年的GPT-3,再到2022 年的GPT-3.5,再到目前的GPT-4。每一代模型的大小和參數(weights, tokens和states)的數量都增加了幾個數量級。
GPT-2 包含15 億個參數,GPT-3 模型包含1,750 億個參數,最新的GPT-4 模型將參數規模推至約1.7 兆個參數(尚未發布官方數字)。
這些參數的龐大數量不僅迫使記憶體容量達到TB 範圍,而且在訓練/推理過程中同時高速存取它們也會將記憶體頻寬推至數百GB/秒(如果不是TB/秒)。為了進一步加劇這種情況,移動它們會消耗大量的能量。
昂貴的硬體閒置
記憶體和處理器之間令人畏懼的資料傳輸頻寬以及顯著的功耗壓倒了處理器的效率。最近的分析表明,在尖端硬體上運行GPT-4 的效率下降至3% 左右。為運行這些演算法而設計的昂貴硬體在97% 的時間內處於閒置狀態。
執行效率越低,執行相同任務所需的硬體就越多。例如,假設1 Petaflops(1,000 Teraflops)的要求可以由兩個供應商滿足。供應商(A 和B)提供不同的處理效率,分別為5% 和50%(表2)。
那麼供應商A 只能提供50 Teraflops 的有效處理能力,而不是理論處理能力。供應商B 將提供500 Teraflops。為了提供1 petaflop 的有效運算能力,供應商A 需要20 個處理器,但供應商B 只需2 個。
例如,一家矽谷新創公司計劃在其超級電腦資料中心使用22,000 個Nvidia H100 GPU。粗略計算,22,000 個H100 GPU 的售價為8 億美元——這是其最新融資的大部分。該數字不包括其餘基礎設施的成本、房地產、能源成本以及本地硬體總擁有成本(TCO) 中的所有其他因素。
系統複雜度對延遲和效率的影響
另一個例子,基於目前最先進的GenAI 訓練加速器,將有助於說明這種擔憂。矽谷新創公司的GPT-4 配置將需要22,000 個Nvidia H100 GPU 副本以八位元組的形式部署在HGX H100 或DGX H100 系統,總共產生2,750 個系統。
考慮到GPT-4 包括96 個解碼器,將它們映射到多個晶片上可能會減輕對延遲的影響。由於GPT 結構允許順序處理,因此為總共96 個晶片為每個晶片分配一個解碼器可能是合理的設定。
此配置可轉換為12 個HGX/DGX H100 系統,不僅對單晶片之間、電路板之間和系統之間移動資料所帶來的延遲提出挑戰。使用增量變壓器可以顯著降低處理複雜性,但它需要狀態的處理和存儲,這反過來又增加了要處理的資料量。
底線是,前面提到的3% 的實施效率是不切實際的。當加上系統實現的影響以及相關的較長延遲時,實際應用程式中的實際效率將顯著下降。
綜合來看,GPT-3.5所需的資料量遠不及GPT-4。從商業角度來看,使用類似GPT-3 的複雜性比GPT-4 更具吸引力。另一方面是GPT-4 更準確,如果可以解決硬體挑戰,它會成為首選。
最佳猜測成本分析
讓我們專注於能夠處理大量查詢的系統的實施成本,例如類似Google 的每秒100,000 個查詢的量。
使用目前最先進的硬件,可以合理地假設總擁有成本(包括購買成本、系統運營和維護成本)約為1 兆美元。根據記錄,這大約相當於世界第八大經濟體義大利2021 年國內生產毛額(GDP) 的一半。
ChatGPT 對每次查詢成本的影響使其在商業上具有挑戰性。摩根士丹利估計,2022 年Google 搜尋查詢(3.3 兆次查詢)的每次查詢成本為0.2 英鎊(被視為基準)。同一分析表明,ChatGPT-3 上的每次查詢成本在3 到14 歐元之間,比基準高15-70 倍。
半導體產業正在積極尋找應對成本/查詢挑戰的解決方案。儘管所有嘗試都受到歡迎,但解決方案必須來自新穎的晶片架構,該架構將打破記憶體牆並大幅降低功耗。(半導體產業觀察)
參考連結
https://www.allaboutcircuits.com/industry-articles/system-challenges-of-generative-ai-inference-acceleration/