首頁 > 科技

挑戰 Google TPU,AI 晶片新玩家面臨哪些難題?

2021-08-09 05:36:04

雷鋒網按:距離 Google 第一代 TPU 助力 AlphaGo 打敗李世石已有 5 年,Google TPU 已經更新到第四代。與此同時,資料中心領域的 AI 晶片大熱,在大量投資下湧現了不少新玩家,儘管未來是光明的,但新玩家們不得不面對 Google 等大企業雄厚的財力和已經形成的市場格局。挑戰 Google TPU,AI 晶片新玩家還會面臨哪些難題?圍繞這一話題,外媒作者 BRIAN BAILEY 進行了全面而深入的解讀,雷鋒網對本文進行了不改變原意的編譯。

近些年,大量資金湧入到資料中心領域新型 AI 處理器的研發中。

但在投資熱潮的背後,也要注意到問題所在。畢竟,該領域需要處理的問題是特定的,結果不可預測;且該領域的競爭者們財力雄厚(因為它們往往是巨頭),能夠提供使用者黏性非常強的產品。

對於新型 AI 晶片設計公司而言,最大的問題在於:來自終端的資料不足。

需要多少個數據中心,才能實現盈利?

通常,晶片設計公司在設計一個新的 AI 處理器時,首先會弄清楚一個基本問題—— 如何定義產品的靈活性?是專為單一任務而設計?還是支援更多的工作負載?

這兩個問題之間存在一系列解決方案,但與過去的許多解決方案相比,為 AI 處理器找到合適的解決方案更加困難,對資料中心工作負載而言尤其如此。

之所以更加困難,是因為有許多因素需要平衡。「既需要在一定的成本和時間內設計和製造晶片,又要考慮成本和回報問題。」Synopsys 人工智慧產品和研發總監 Stelios Diamantidis 解釋道。這些限制因素縮小了 AI 處理器的潛在市場。

「設計和製造定製晶片,什麼時候才能賺錢?」Synopsys 驗證組工程副總裁 Susheel Tadikonda 說。

「如果我們要為資料中心提供定製晶片,那麼需要多少個數據中心才能實現盈利?也許可以高價出售晶片,但光是這樣遠遠不夠。如果是為消費電子裝置設計和製造晶片,那麼這一領域存在十億臺裝置體量,這也是 AISC 晶片能夠賺取更多利潤的市場之一,當然裝置體量越大越好。」

不過就算最終弄清楚多少個數據中心才能實現盈利,也無法確定設計方案。

「晶片定製化程度越來越高,以至於能夠為非常特定的演算法創建晶片,提供更高的能效和效能,」西門子 EDA 戰略和業務發展高階經理 Anoop Saha 說: 「但這會犧牲一部分市場,也會縮短晶片的壽命。如果兩年後出現了一個新演算法,那為舊演算法定製的晶片的價值還會如初嗎?很多事情都會互相牽制。「

「一些邊緣演算法確實已經趨於穩定。這是因為業界經過多年研究,找到一些多場景適用的最佳演算法,例如我們已經看到的神經卷積網路演算法 CNN(convolutional neural network),還有對於喚醒詞檢測、手寫識別等特定應用找到的最佳演算法。」Anoop Saha 補充道。

晶片自定義的優勢

要對晶片進行自定義,核心是理解面向何種工作負載——晶片自定義的確為許多玩家帶來優勢。

Xilinx 人工智慧和軟體產品營銷總監 Nick Ni 表示:「大多數大型企業已經組建了自己的晶片部門,併為其資料中心一些高工作負載打造晶片。例如,如果 Google 將‘推薦’型神經網路視為其資料中心中最高的工作負載之一,那麼它就很有必要為此創建專用晶片。如果排名第二的工作負載是語音識別,排名第三的是 YouTube 的視訊轉碼,那麼為其打造專用晶片都是有意義的。「

「其實這裡的機會很多,但 Google 只是一個孤例。幾年前,谷歌發表了一篇廣受好評的論文,文章陳述了一個事實——資料中心的工作負載類型非常豐富,但沒有一種工作負載佔比超過 10%,這意味著還有大量佔比微小的工作負載需要優化。」

「大多數定製都是面向推理的,當這些定製晶片轉向訓練時,就需要浮點支援,」Synopsys 的 Diamantidis 表示。

「但是如果需要的是一個 100% 應用於推理的解決方案,那麼它的定點( fixed point)位數可能是八位甚至更低的精度。如果模型是固定的,那麼在推理基礎裝置之上進行定製是否有意義?例如,針對語音、視訊以及其他重量級應用程式的定製解決方案。大企業們(Hyperscaler)實際上正在投資應用於推理的晶片解決方案,這些推理適用於它們自身在 AI 領域的定製化高階模型和解決方案——但如果是需要處理多種應用,那麼就需要更多的靈活性和可定製性。」

當然,對 Google 而言,這已經是一個良性迴圈。「 TPU 旨在滿足 Google 資料中心內的特定工作負載,」Synopsys 的 Tadikonda 說。「Google 最開始打造TPU,是因為意識到處理如此龐大複雜的資料和計算,需要建立起大量的資料中心。"

「第一代 TPU 體積大且非常耗電,但它已經通過不斷地學習而得到了改進,這正是這些 TPU 的工作,這就是 Google 。 」

並非每家公司都能夠使用 Google 的反饋迴圈,不過其他公司也確有其他選擇。「我們發現,其中一個關鍵點是儘可能早得關注和重視選擇正確的架構,」西門子的 Saha 說。「所謂正確,並不是指某一個人認為正確,也不是基於過去的經驗,憑直覺做出的決定,因為現在還有太多的未知數。業界正在做的,是在設計週期早期,依靠資料驅動做出決定,這樣我們能夠在發現某些東西不起作用時迅速做出改變。」

這些決定是宏觀的,也可以是微觀的。「比如說,你的儲存元素與計算元素差距有多大?」 Saha問道:「再比如,多久執行一次記憶體讀取,這是一個重要的問題,因為讀取和寫入將直接影響整體的能效。業界正在尋找新的架構,沒有人知道什麼樣的架構才真正起作用。不過可以確定的是,要有一定的可塑性,且在決定架構之前,能夠確保有足夠的市場資料來支撐。」

硬體和演算法迭代快

影響架構選擇的另一個因素是硬體和演算法的發展速度。這決定了資料中心所有者從他們購買的硬體中賺錢的時間,也決定了他們願意支付的價格,同時限定了晶片開發的總成本。

那麼,資料中心晶片(即硬體)的使用壽命是多久?

「通常情況下,晶片或電路板的壽命為三到四年,」Xilinx 的 Ni 說。「一些較為激進的資料中心可能會在這一時間段內升級,還有一些則會持續使用更長時間。在人工智慧領域,如果我們關注 Google TPU 的釋出新聞,就能發現在過去六年左右的時間裡,Google 發行了四個版本的 TPU,也就是說,幾乎每隔一兩年 Google 就會更換一次內部硬體,針對 AI 等快速變化的工作負載進行優化。」

換個角度來看,AI 晶片公司可能每 18 個月就有一次進入資料中心的機會。「要攪動這個市場並不容易,」Saha 說。「有兩個重要因素——更換現有資料中心晶片的頻率,以及新增新東西的頻率。我看見幾乎所有的資料中心都在嘗試更新的東西,幾乎每個構建資料中心晶片的公司都在同一些終端客戶合作。「

「市場多久更換一次正在工作的晶片?只要晶片在工作,公司就會盡量延長晶片的使用壽命。一旦晶片進入資料中心,持續的時間會很長且難以更換。這就是為什麼我們可以看到大型資料中心晶片領域有大量投資。」

「一部分投資者認為這是贏家通吃的市場,最終會有一至三個獲勝者獲得最大的市場份額。一旦市場被這些公司佔領,這些公司的地位就很難被取代。」

設計面向 18 個月後的晶片

如果從今天開始設計晶片,那麼這顆晶片必須滿足18個月後需要滿足的條件。

「當我們決定對晶片進行模組化時,我們還必須針對特定精度進行優化,」Xilinx 的 Ni 說。「例如,當我們選擇在 8 位數精度上做文章時,我們不得不立下賭約,當這款產品成為主流時,8 位仍然是主流。

「我們還要確保製造出的產品可以處理混合精度網路,其中一半是 8 位,四分之一是 4 位,另外四分之一是 1 位。為此,我們在 AI 引擎中執行 8 位,其運行基本效能非常快,然後可以在 FPGA 架構中實現 4 位和 1 位 MAC 單元。」

設計時間和演算法進化的時間要保持一致。「在 18 個月內,應用程式很可能會變得相當不同,」Tadikonda 警告說。「我認為今天的資料科學家不會向任何人保證他們將在未來 18 個月內運行與今天相同的模型。」

還有其他一系列決策也需要作出。

「量化可能是許多能效指標中的最大因素,」Saha 說。「量化將對推理產生更大的影響,推理分散在資料中心和邊緣之間,但在‘學習’端也需要一些量化。當我們量化成較低的位數時,就意味著我們正在權衡能效而不是準確性。訓練可能需要浮點數,不過有一些新型浮點數出現。谷歌在設計下一代 TPU 時,他們創造了 Bfloat16,這是用於訓練的「大腦浮點數」。它與 IEEE 浮點數非常不同,它在精度上具有浮點數的優勢,但也具有顯著的能效優勢。」

不過這將讓經濟因素陷入困境。

「對於如此規模的 ASIC,需要在快速變化節奏裡付出巨大的努力,只有少數公司能夠保證其經濟性,」Tadikonda 說。「因為有關這些資料的用例正在增加,所以演算法正在發生變化。我們今天認為有效的演算法明天不一定有效,想要跟上節奏並處於最前沿,就必須不斷創新或重新研發 ASIC。谷歌佔據優勢,因為它擁有足夠多的資料以至於能快速攪動局面,它從自己的 TPU 中學到了很多東西,知道為了保證程式運行地更好需要作出哪些改變。」

「如果我是第三方晶片開發商,我沒有這些資料,就只能依靠我的客戶來提供,因此週轉週期會更長。谷歌的情況非常特殊。」

資料的缺乏也給驗證帶來壓力。「浮點硬體的驗證對滿足這些晶片的效能和功耗要求至關重要,」OneSpin市場營銷主管 Rob Van Blommestein 說。

「長期以來,浮點硬體設計的驗證一直被認為是一項重大挑戰。FPU(floating-point unit)將浮點運算的數學複雜性與需要複雜控制路徑的各種特殊情況相結合。我們需要一種正式的驗證解決方案,以驗證由硬體浮點單元 (FPU) 計算出的算術運算結果是否與 IEEE 754 標準規範準確匹配。」

結論

人們常說,資料是新的石油,這一比喻在人工智慧領域得以明顯體現。

對於晶片架構師來說,這個比喻再恰切不過。他們需要訪問資料來改進構建更好的產品,這也是資料中心處理器使用者黏性高的原因;架構師們一旦擁有資料中心處理器,就有機會獲得需要的資料。

另一個唯一可行的辦法是加快設計速度來提升效率,推動產品成本的回收——但具有諷刺意味的是,在試圖通過提升效率來解決問題的時候,AI 卻成為了唯一的阻礙者。

畢竟,AI 領域的演算法進化速度和變數實在是太大了。

雷鋒網編譯,文章源自原SemiEngineering


IT145.com E-mail:sddin#qq.com