西方唯一AI芯片獨角獸單挑英偉達
以布里斯托市A38路旁的噴泉池為起始點,你需要花用不到20分鐘時間,就可以騎自行車“衝”出這座英國西南部城市的CBD,進入幾乎只有成排英式平房、灌木叢和河道的郊外。沒錯,即便布里斯托(Bristol)是名副其實的英國西南部中心,但從城市規模來看,但它依然被很多中國留學生起了一個非常清新脫俗的名字——“布村”。( “除了倫敦,其他都是村兒”。)
出品|虎嗅科技組
作者|宇多田
然而,如今接觸芯片產業後,我們才恍然發現,這座古老的英國小城,竟然藏著英國最強大的半導體產業集群之一。
1972年,矽谷大名鼎鼎的仙童半導體(英特爾、AMD的創始人們都是從這家公司出來的)為進入歐洲市場做出了一個重要決策——在布里斯托設立一個辦事處。自此,便打開了這座英國西部小城面向半導體產業的全球視野。
而6年後,誕生於布里斯托,並在80年代佔據全球SRAM市場60%份額的微處理器公司Inmos,接受了卡拉漢政府與撒切爾政府高達2億英鎊的投資,才終於創造出以布里斯托核心的英國半導體基礎設施與生態系統,召集了大批像XMOS 半導體創始人、英國著名計算機科學家David May這樣的半導體超級精英。
“其實布里斯託一直都是英國的IT重鎮。它與周圍的斯溫頓、格洛斯特組成一個三角地帶,被稱為歐洲的’矽谷’。半導體公司如果在歐洲設立研發中心,布里斯托通常是首選。譬如英偉達、惠普、博通、高通等世界級巨頭都在布里斯托設有辦事處。”
一位了解歐洲半導體產業的從業者告訴虎嗅,很多人因為ARM對劍橋印象深刻,但從歷史來看,實際上布里斯托才是英國的芯片設計中心。
“華為也在布里斯託也有研發中心。”
就像上世紀50年代,8位天才“叛徒”離開仙童半導體創立英特爾、AMD、泰瑞達等公司,才成就瞭如今的矽谷一樣,布里斯托才華橫溢的工程師們也不甘於停留在“過去”——在摩爾定律失效爭議進入高潮,人工智能、計算結構發生異變的“臨界點”上,沒有人不渴望能夠成為那個改變時代的領導者。
一位名叫Simon Knowles 的工程師從劍橋大學畢業後,在1989年第一次踏上布里斯託的土地,接受了存儲器企業Inmos的一份芯片設計工作。
在此後近20年裡,從Inmos內部一個專用處理器團隊的領導者,再到兩家半導體企業Element 14與Icera的創始人之一,Knowles幾乎見證了摩爾定律達到巔峰和走向衰落的全過程。而幸運的是,Knowles參與創立的這兩家總估值超過10億美元的公司,分別在2000年和2011年被博通和英偉達收購。
沒有任何意外,這位天才半導體設計師與連續創業者,又繼續在2016年另起爐灶,與另一位天才半導體工程師Nigel Toon創立了一家新的半導體設計公司,主動迎擊人工智能市場需求觸發的芯片架構創新機會。
沒錯,這家公司就是剛在2020年12月29日宣布完成2.22億融資(這筆融資也讓公司的資產負債表上擁有4.4億美元現金),估值已高達27.7億美元,被外媒稱為英偉達最大對手之一的人工智能加速處理器設計商Graphcore。
需要注意,它也是目前西方AI芯片領域唯一的獨角獸。
圖片為Graphcore的IPU處理器
西方私募與風投對待半導體這種項目一直非常謹慎,因為它們資金高度密集且無法預估前期投資回報。正如Knowles在一次採訪時承認:“與能夠小規模嘗試、不成功再換一個坑的軟件產業相比,如果一枚芯片設計失敗,除了花光所有錢,公司幾乎無路可選。”
因此,直到2018年以後,隨著人工智能商業化的可能性被持續鼓吹和放大,投資者們才確定可以從“人工智能大規模運算驅動芯片結構變革”的趨勢中看到回報前景。
於是,在2017年獲得了超過8000萬美元投資後的Graphcore,又接連在2018年與2020年分別獲得2億與1.5億美元風險投資。
需要注意的是,除了博世、三星從A輪就開始參投,紅杉資本是Graphcore的C輪領投方,而微軟與寶馬i風投則成為其D輪融資領投方;
而E輪融資的主要參與者,則是非產業基金——加拿大安大略省教師養老金計劃委員會領投,富達國際與施羅德集團也加入了這輪融資。
你可以從投資方看出,Graphcore的產業投資方基本分為三個產業方向——雲計算(數據中心)、移動設備(手機)與汽車(自動駕駛)。沒錯,這是三個最早被人工智能技術“入侵”的產業。
圖片來自Crunchbase
工業界們似乎越來越達成這樣一個共識,未來需要有一家像ARM主導移動設備時代一樣的底層創新企業,除了有希望賣出上億塊芯片的同時,也能推動人工智能與各個產業的深度整合,最終觸達到上百億普通消費者。
從產品的角度來看,Graphcore 在2020年拿出了相對引人注目的作品——推出第二代IPU-M2000芯片,該芯片搭載在一個名為IPU Machine platform的計算平台上。另外,其芯片配套的軟件棧工具Poplar也有同步更新。
“教計算機如何學習,與教計算機做數學題,是完全不同的兩件事。提升一台機器的’理解力’,底層驅動注重的是效率,而不是速度。” Graphcore CEO Nigel Toon 將新一代AI芯片的開發工作視為一個“千載難逢的機會”。
“任何公司能做到這一點,都能分享對未來幾十年人工智能技術創新和商業化的決定權。”
切中英偉達的“軟肋”
沒有一家AI芯片設計公司不想幹掉市值高達3394億美元的英偉達。或者說,沒有一家公司不想做出比GPU更好的人工智能加速器產品。
因此,近5年來,大大小小的芯片設計公司都傾向於在PPT上,用英偉達的T4、V100,甚至是近期發布的“最強產品”A100與自己的企業級芯片產品做比較,證明自己的處理器擁有更好的運算效率。
Graphcore也沒有例外。
他們同樣認為,由於上一代的微處理器——譬如中央處理器(CPU)和圖形處理單元(GPU)並不是為人工智能相關工作而專門設計,工業界需要一種全新的芯片架構,來迎合全新的數據處理方式。
當然,這樣的說法並不是利益相關者們的單純臆想。
我們無法忽視來自學術界與產業界對GPU越來越多的雜音——隨著人工智能算法訓練與推理模型多樣性的迅速增加,在誕生之初並不是為了人工智能而設計的GPU暴露出了自己“不擅長”的領域。
“如果你做的只是深度學習裡的捲積神經網絡(CNN),那麼GPU是一個很好的解決方案,但網絡已經越’長’越複雜,GPU已經難以滿足AI開發者們越來越大的胃口。”
一位算法工程師向虎嗅指出,GPU之所以快,是因為它天生就能並行處理任務(GPU的釋義和特點可以看《幹掉英偉達》這篇文章)。如果數據存在“順序”,無法並行,那麼還得用回CPU。
“很多時候既然硬件是固定的,我們會想辦法從軟件層,把存在順序的數據,變為並行的數據。譬如語言模型中,文字是連續的,靠一種’導師驅動’的訓練模式就可以轉換為並行訓練。
但肯定不是所有模型都可以這麼做,譬如深度學習中的’強化學習’不太適合用GPU,而且也很難找到並行方式。”
由此來看,學術圈不少人甚至喊出“GPU阻礙了人工智能的創新”這句話,並不是聳人聽聞。
深度學習的4個發展脈絡,製圖:宇多田
“深度學習”,這個近10年來機器學習領域發展最快的一個分支,其神經網絡模型發展之快、類型之廣,只靠GPU這塊硬件的“一己之力”是很難追上其複雜運算腳步的。
Graphcore 回復了虎嗅一份更為詳盡的答案。他們認為,對於深度學習中除去CNNs的另外幾個分支,特別是循環神經網絡(RNN)與強化學習(RL),讓很多開發者的研究領域受到了限制。
譬如,用強化學習做出了阿爾法狗的英國AI公司Deepmind,很早就因為GPU的計算局限問題而關注Graphcore,其創始人Demis Hassabis最後成為了Graphcore的投資人。
“很多企業產品部門的開發者把需求(特別是延時和吞吐量的數據指標)交給算力平台部門時,他們通常會拒絕說’GPU 目前不夠支持這麼低的延時和這麼高的吞吐量’。
主要原因就在於,GPU的架構更適用於’靜態圖像分類與識別’等擁有高稠密數據量的計算機視覺(CV)任務,但對數據稀疏的模型訓練並不是最好的選擇。
而跟文字相關的“自然語言處理”(NLP)等領域的算法,一方面數據沒那麼多(稀疏),另一方面,這類算法在訓練過程中需要多次傳遞數據,並迅速給出階段性反饋,以便為下一步訓練提供一個便於理解上下文的語境。”
換句話說,這是一個數據在持續流動和循環的訓練過程。
就像淘寶界面的“猜你喜歡”,在第一天在“學習”了你的瀏覽和訂單數據後,把不太多的經驗反饋給算法進行修正,第二天、第三天以及未來的每一天不斷學習不斷反饋,才會變得愈加了解你的產品喜好。
而這類任務,譬如穀歌為更好優化用戶搜索在2018年提出的BERT模型,便是優秀且影響深遠的RNN模型之一,也是Graphcore提到的“GPU非常不擅長的一類任務”。為了解決這類問題,仍然有很多公司在使用大量CPU進行訓練。
CPU與GPU架構對比
從根本上看,這其實是由當下芯片運行系統最大的瓶頸之一決定的——如何在一塊處理器上,將數據盡可能快地從內存模塊傳送到邏輯操作單元,且不費那麼多功耗。在進入數據爆炸時代後,解鎖這個瓶頸便愈加迫在眉睫。
舉個例子,2018年10月BERT-Large 的模型體量還是3.3 億個參數,到2019年,GPT2的模型體量已達到15.5億(兩個均屬於自然語言處理模型)。可以說,數據量對從系統底層硬件到上層SaaS服務的影響已經不可小覷。
而一塊傳統的GPU或CPU,當然可以執行連續多個操作,但它需要“先訪問寄存器或共享內存,再讀取和存儲中間計算結果”。這就像先去室外地窖拿儲存的食材,然後再回到室內廚房進行處理,來來回回,無疑會影響系統的整體效率和功耗。
因此,很多半導體新興企業的產品架構核心思路,便是讓“內存更接近處理任務,以加快系統的速度”——近存算一體。這個概念其實並不新鮮,但能做出真東西的公司少之又少。
而Graphcore到底做到了什麼?簡單來說,便是“改變了內存在處理器上的部署方式”。
在一塊差不多像小號蘇打餅一樣大的IPU處理器上,除了集成有1216塊被稱為IPU-Core的處理單元,其與GPU和CPU最大的不同,便是大規模部署了“片上存儲器” 。
簡言之,便是將SRAM(靜態隨機存儲器)分散集成在運算單元旁,拋棄了外接存儲,最大程度減少數據的搬移量。而這種方法的目標,就是想通過減少負載和存儲數量來突破內存帶寬瓶頸,大大減少數據傳輸延遲,同時降低功耗。
IPU架構
也正因為如此,在一些特定算法的訓練任務中,由於所有模型都可以保存在處理器中,經過測試,IPU的速度的確可以達到GPU的20~30倍。
舉個例子,在計算機視覺領域,除了大名鼎鼎且應用廣泛的殘差網絡模型ResNets(與GPU很契合),基於分組卷積與深度卷積方向的圖像分類模型EfficientNet 和ResNeXt 模型也是逐漸興起的研究領域。
而“分組卷積”有個特點,就是數據不夠稠密。
因此,微軟機器學習科學家Sujeeth 用Graphcore的IPU做了一次基於EfficientNet模型的圖像分類訓練。最後的結果是,IPU用30分鐘的時間完成了一次新冠肺炎胸部X光樣片的圖像分析,而這個工作量,通常需要傳統GPU 用5個小時來完成。
重重考驗
但是,就像GPU的大熱與計算機視覺領域的主流算法模型ResNets的廣泛應用的相輔相成,決定Graphcore成功還是失敗的關鍵,也在於“特定”。
就像Graphcore銷售副總裁兼中國區總經理在接受虎嗅採訪時指出:
一方面,他們的產品的確更適用於訓練市場中數據較為稀疏,精度要求較高的深度學習任務,譬如與自然語言處理相關的推薦任務,這也是阿里雲與百度願意與之達成合作的重要原因之一。
另一方面,計算機視覺領域剛流行起來的新模型,是IPU在努力“攻克”的方向,而之前很多模型,還是GPU最應手。
此外,GPU創造的強大軟件生態Cuda,比硬件更不容易被破壞(關於Cuda,也在《幹掉英偉達》這篇文章裡有詳細解釋),而這層圍牆恰恰是開闢產業影響力的關鍵。
毫無疑問,Graphocore在這方面根基尚淺,因此除了常規操作,他們選擇基於編程軟件Poplar,做一些相對大膽的嘗試。
譬如,他們在自己的開發者社區開放計算圖庫PopLibs的源代碼,讓開發者去嘗試描述一種新的捲積網絡層。這一層對標的是GPU的cnDNN和cuBLAS,而英偉達並沒有開放它們。
為了向開源社區致敬,Poplar v1.4增加了對PyTorch 的全面支持。這一聰明的舉動將有助於簡化人們的接受程度,有助於吸引更廣泛的社區參與。
此外,為了能夠盡快打開市場,Graphcore並沒有走“打比賽來提升產業知名度”的實驗室銷售路線,而是將IPU直接推入了產業界,去逐個敲開服務器集成商、雲廠商等客戶的大門。
“AI這個行業本身,不管是算法的迭代還是模型的變化,其實都是非常快的。有云廠商曾抱怨,說某家處理器跑某一種模型性能非常好,但模型稍微改一改,跑出來的性能就大跌眼鏡。”
Graphcore中國區技術應用總負責人羅旭認為,儘管市場在大量鼓吹ASIC(專用芯片)和FPGA(可編程芯片),但通用性,仍然是產業界考慮芯片的首要條件,尤其是互聯網廠商。
“互聯網廠商應用非常多,每個應用都會有不同的適用模型。如果一個處理器只能適配一個模型,那客戶是無法引入這個處理器做大量推廣的。”
而“編程環境是否友好”,也就是英偉達Cuda貢獻的那種力量,是第二個關鍵的採購指標。
“現在客戶一般都是用AI框架來設計模型,比如穀歌的TensorFlow、Facebook的PyTorch等等。他們會考慮這枚處理器的上層SDK是否能夠輕鬆接入到框架裡,以及編程模型是否好用。
客戶可能會有一些算子級別的優化,需要做一些自定義算子。自定義算子開發起來是否方便其實也是取決於編程友好性如何。”
如果說客戶還在乎什麼,當然是產品性能。
無論是雲廠商、服務器廠商還是通過雲服務購買算力的開發者,都會測試多種模型跑在芯片上的性能表現。
“如果他們主要看重NLP(自然語言處理)模型,那在性能測試時就可能重點測一下BERT。如果他們看重計算機視覺,那在性能測試時就可能重點測試一些計算機視覺的經典模型。
總的來說,客戶需要從以上幾個維度綜合評估下來,才能決定到底要不要使用這個處理器,或者說,必須確定這個處理器能給他們帶來多大的收益。”
而在這個方面,無論是英偉達,還是Graphcore的IPU或其他廠商的專用芯片,都是有自己最擅長的模型,只能說是“各有千秋”,絕對不能以偏概全。
贏家通吃,將不復存在
從Graphcore給出的產品基準測試指標與宣傳重點來看,這家公司正在拿著錘子找釘子,努力擴展IPU擅長的應用場景,以便讓IPU架構能夠發揮最大效率。
換句話說,Graphcore或許會分英偉達的一杯羹,但永遠不可能取代它們。
正如“特定”這個詞的含義所限,人工智能訓練與推理芯片市場,因模型的多樣性與復雜性,一定能夠容納包括英偉達、Graphcore在內更多的芯片企業。
Nigel Toon也承認,人工智能計算將孕育出三個芯片垂直市場:
相對簡單的小型專用加速器市場,譬如手機、攝像頭以及其他智能設備裡的某個IP核;
再譬如適用於數據中心某幾個功能的ASIC芯片,具體問題具體解決,超大規模數據中心運營商(雲廠商)將在這個市場中有大量機會;
最後一個是可編程的AI處理器,也就是GPU所在的市場。這個市場一定會有更多企業,同時未來更多的創新也一定會產生更大的份額。
CPU會持續存在,GPU也會持續創新,他們在某些AI計算任務上都是不可或缺的,或者說是最好的選擇。但是摩爾定律失效、AI計算和數據爆炸等趨勢催生出的新市場,一定是巨大且多樣性的。正是因為多樣性,所以才給了更多專用芯片公司新的機會。
因此,像Cerebras、Groq、 SambaNova Systems 、Mythic AI這樣的芯片創業公司才得以籌集到數億美元資金,英特爾也在今年投資了革新AI芯片架構的Untether AI。已經有不少人給出這樣的預測——新一代的’蘋果‘與’英特爾’可能會在人工智能計算市場中誕生。
在軟件還沒有跟上硬件步伐的當下,這意味著激烈的競爭才剛剛開始。