天天看點

置身事内:騰訊的造芯之路

作者:飯統戴老闆
置身事内:騰訊的造芯之路
置身事内:騰訊的造芯之路

事後想來,晶片驗證工程師Lynda覺得進騰訊有點“草率”了。

作為一個在半導體行業工作過多年的資深工程師,Lynda第一次看到騰訊釋出晶片崗位需求時,略感到一絲驚訝。2019年1月她帶着好奇加入這家網際網路大廠,準備撸起袖子,大幹一場。

面試時,主導晶片設計工作的Henry給她打過一劑預防針:“我們是從零開始做晶片。”Lynda試圖代入鵝廠一貫的低調來了解這句話,但随即便在第一天上班時被跟同僚的對話震到了:

-“我們的仿真工具呢?” -“沒有,還在談。”

-“驗證環境怎麼說?” -“還……沒有。”

-“那……驗證流程呢?-“這個……也沒有。“

對于一個晶片驗證工程師來說,仿真工具、驗證環境、驗證流程就是必備的生産力工具。Lynda想全程參與晶片研發業務,倒不怕從頭開始,隻不過沒想到連這些必備品都能 “三無”。

當一家網際網路公司投身半導體時,工具的欠缺還不是最緊要的。“造芯”不僅是業務的簡單延伸,它往往意味着更複雜的産業鍊、更耗時的人才沉澱、以及更迥異的生态文化和技術理念。

比如晶片研發不像軟體開發尚可後期不斷改bug,設計問題沒被前期驗證發現,一旦流片就隻能淪為一塊“磚頭”。而Lynda所擔任的驗證工程師,就是防止前期努力打水漂的守門員。

這個崗位的重要性不言而喻,設計工程師與驗證工程師的比例在很多晶片公司會達到1:3。但Lynda入職後環顧四周,發現不僅自己隻有一個并肩作戰的同僚,連驗證的代碼也一行都沒有。

這時候,Lynda才開始明白Henry口中的“從零開始”意味着什麼,以及她面臨着怎樣一場艱難的戰役。

01

雄關如鐵,出師未捷

在騰訊雲副總裁、雲架構平台部總經理謝明看來,“從零開始”的背後還有更多的曲折故事。

謝明所在的雲架構平台部,站在騰訊各類前端應用的身後,是騰訊海量業務資料沖刷的前線,有效支撐了QQ、郵箱、微信、微雲、流媒體視訊等一個又一個的國民級應用。

2013年,QQ相冊已經發展成騰訊最大的一個存儲類業務。讓使用者通路相冊的速度更快、體驗更順滑,成了一個很急迫的需求。轉化成相應的技術問題,就是圖檔能否更快地轉碼?能否在不損畫質的情況下壓縮?能否以更低的成本存儲?

他們反複地追問。

團隊深刻地明白底層技術創新對上層應用的放大價值。軟體架構上固然要永遠不停歇地進行自我超越,但他們敏銳地察覺到,隻有在硬體上也作出創新,才能實作更深層次的突破。

問題是:一個做軟體出身的團隊,怎麼去做硬體?

一圈研究之後,他們決定先拿FPGA(可程式設計陣列邏輯)試水。跟我們平時電腦和手機裡的通用晶片相比,FPGA是一種專用內建電路(ASIC),能夠實作靈活的“半定制”開發。

FPGA相比起晶片容錯率高,但在吞吐率、延遲、功耗和靈活性等次元上都很平衡。尤其是在處理海量資料時,FPGA相比GPU具有超低延時的顯著優勢,很适合用在特定的業務場景。

事實驗證了這種判斷。2015年,團隊集中力量研發的圖檔編碼FPGA,取得了比CPU編碼和軟體編碼更高的壓縮率和更低的延時,也幫助QQ相冊很大程度上降低了存儲成本。他們看到了在FPGA方向探索和深入的可能性。

2016年前後,由Alpha Go引爆的AI熱潮更把FPGA拉入了主流視野。團隊通過FPGA對深度學習模型的CNN算法進行加速後,處理性能達到通用CPU的4倍,而機關成本僅為1/3。

FPGA效果雖好,但技術門檻比較高,“如果把FPGA雲化,是不是一個能夠擴大應用的解決路徑?”

帶着這樣的期待,2017年1月20日,騰訊雲推出了國内首款FPGA雲伺服器,希望以雲計算的方式,将FPGA能力推廣到更多企業。

從效果上來說,在FPGA雲伺服器上進行FPGA硬體程式設計的企業,确實能将性能提升至通用CPU伺服器的30倍以上,而隻需支付相當于通用CPU約40%的費用。以一家著名的基因檢測公司為例,傳統用CPU需要檢測一周的基因序列,FPGA可以壓縮到數小時完成。

然而雲化後的FPGA,沒能如預期般迅速席卷整個行業。

一方面,FPGA畢竟是一種“半定制”的電路,許多企業還是無法獨立勝任FPGA開發,需要更加上層的服務;另一方面,通用晶片成本的迅速下降,也讓FPGA的成本效益優勢逐漸喪失。

雲端商業化的受挫潑來一盆冷水,把團隊的熱情從巅峰一下子打到了谷底,同時也把兩個問題赤裸裸地抛到整個團隊的眼前:FPGA對業務的價值究竟有多大?FPGA還能繼續做嗎?

受此打擊,團隊在2018年也近乎分崩離析,人員開始集中式地離開。騰訊在“造芯”上的第一次探索,畫上了一個遺憾的逗号。

02

柳暗花明,“蓬萊”問世

在FPGA雲伺服器受挫後,騰訊需要重新思考硬體之路要怎麼走下去。

在團隊幾乎解散的2018年,中國晶片行業迎來暖春:中美貿易摩擦給全民普及了晶片的重要性,科創闆的設立為半導體企業上市開啟大門,而國家資金的進場更是讓大江南北一片熱火朝天。

但是,對于網際網路公司來說,做晶片跟做雲計算、資料庫、存儲系統等一樣,需要有具體的業務場景支撐,不能“為了做而做”。在經曆過一場不算成功的探索後,騰訊要等待下一個真實需求帶來的機會。

時間進入2019年。那是人工智能規模化應用的元年,内外部業務都提出了對AI晶片的強烈訴求。AI晶片,要不要做?

這個問題被提出來的時候,騰訊的管理層有過反對的聲音,擔心技術人員隻是頭腦發熱,隻是為了追逐熱點。但同時,管理層也給了足夠的灰階,沒有明令禁止小團隊級别的探索。

以小規模、低成本、特定應用場景的方式先行試水,成了大家的共識。

雲架構平台部将第一款晶片敲定AI推理方向,取名“蓬萊”,希望這款晶片能像中國古代神話裡的海外仙山一樣,穩固地立于洶湧波濤之上。

這支硬體突圍小分隊,也被正式命名為“蓬萊實驗室”。

置身事内:騰訊的造芯之路

有了FPGA探索時積攢的經驗,蓬萊實驗室對硬體程式設計語言已經相當熟練,也在标準接口、總線等方面積累了一些平台化的設計。然而,兩者的研發要求,不可同日而語。

如果說做FPGA是搭現成的積木,那麼做晶片就是直接從伐木開始來着手來制造積木。FPGA出了問題可以重新程式設計,而晶片隻有一次流片機會,一旦出錯,所有的努力便付諸東流。

此外, FPGA的資源是現成固定的,晶片的資源卻是由自己定義的。一個字,就是要“摳”:用最小的資源做最大的事。

晶片架構工程師Rick用“裝修”改“重建”來形容整個蓬萊項目。一開始,團隊以為能把之前FPGA的技術較為簡單地轉成晶片。做着做着發現,以為終歸隻是以為——FPGA架構在晶片中能直接複用的并不多,團隊隻能把原來的架構整個拆掉,重寫的代碼量高達85%。

像DDR存儲器這樣的重中之重,晶片廠商通常會有專門的驗證人員負責,而剛起步的蓬萊實驗室沒這個條件,隻能靠搶時間把功課補回來。Lynda後來回憶道:“我恨不得一天有48個小時”。

2020年1月,蓬萊晶片流片完成,被合作方快遞到深圳。新冠疫情剛剛在全國範圍内暴發,公司已經開啟集體遠端辦公。

置身事内:騰訊的造芯之路

流片完成的蓬萊晶片被快遞回深圳

項目負責人Henry戴着手套取到快遞,用酒精仔細消毒後,帶到空空蕩蕩的辦公樓,大開着窗戶和風扇,在一片消毒水味中,他和幾個同僚一起開始了至關重要的點亮操作。

所謂點亮,就是給晶片上電,首先看有沒有短路冒煙,接着就是測試一些基本功能。是晶片還是“磚頭”,成敗在此一舉。

置身事内:騰訊的造芯之路

調試蓬萊晶片的時鐘

結果,晶片的時鐘頻率一直沒出來。要知道,時鐘頻率是晶片的“節拍器”,沒有時鐘頻率,晶片的不同子產品等于沒對好表,就無法協同工作。

是不是這塊晶片的問題?實驗人員換了一塊晶片,依然沒有信号輸出。

再換一塊,還是沒有。現場鴉雀無聲。

實驗人員已經不敢動手了。有人忍不住開玩笑,是不是該回家改履歷了。

但除了沮喪,大家心裡更多的是疑惑。因為項目雖然人少、資源少,近乎是白手起家,但蓬萊團隊從設計人員到驗證人員都有信心說:每一步都做好了。到底是哪裡不對呢?

在無比凝重的氣氛中,他們繼續放闆、上電、讀取信号……

第四塊晶片,亮了。剩下的所有晶片,也都沒問題。

真相其實很簡單。28納米工藝的晶片不良率隻有3%,但偏偏随機測試的前三片都是壞片,小機率事件就恰好讓他們全趕上了。這讓他們把“生一胎”的緊張情緒,體驗到十足。

在虛驚一場後的拍手相慶中,騰訊第一款晶片,宣告問世。

03

更上一層,“紫霄”淩雲

量産後的蓬萊晶片,實戰表現也不負衆望,助力騰訊推出中國第一台獲準進入醫院臨床應用的智能顯微鏡,實作自動識别醫學圖像、統計細胞數目并直接顯示在視野上,性能表現完全符合設計要求。

置身事内:騰訊的造芯之路

蓬萊晶片在智能顯微鏡上調試

這一掃當年FPGA雲伺服器項目的陰霾,說明在制造造出直面應用、性能卓越的晶片,這條路,騰訊走得通。

終端晶片蓬萊的問世,隻是完成了從0到1的任務。團隊已經迫不及待向要從1到N,向着大規模雲端晶片進軍。蓬萊實驗室負責人Alex将大晶片申請立項戲稱為“A輪融資”。

初試鋒芒之後,團隊需要向公司說明,為什麼需要用更大的投入去做大規模晶片?在短期和長期能否保持領先性?如何與内外部業務結合創造價值?

騰訊這次面臨的決策,要容易做得多。

首先是蓬萊實驗室的成熟。通過一邊行軍一邊成長,蓬萊實驗室完成了一次次蛻變,建立起完整、嚴謹、規範的晶片研發體系和流程。這已經是一支具備硬核氣場的“正規軍”。

更重要的是,團隊證明了騰訊做晶片的優勢和站位。

謝明解釋說,從行業來看,做晶片除了要考慮技術和工藝,最大的難點在于對晶片的“定義”。傳統晶片廠商的優勢在于前者,但晶片做出來之後再去比對需求,在很多場景下真實性能是損失的。Google、騰訊這類科技企業的優勢在于自身就是需求方,對需求的了解和洞察最深刻、最透徹。

方向沒有問題,技術和工藝也沒問題,騰訊進階執行副總裁、TEG(技術工程事業部)總裁盧山給予了全面支援,并通過總辦争取到了更多的headcount和資金。

有了公司戰略的支援,團隊志氣滿滿奔赴更大的戰場。蓬萊實驗室副總監Austin決定兵分兩路,在AI推理和視訊編解碼上并行推進。

AI小分隊繼續做蓬萊的2.0版“紫霄”。這是《封神演義》裡鴻鈞老祖所居宮殿的名字。在穩固的仙山上牢築“紫霄”,代表了新的野心:

這次,他們将目标直接定為業界第一。

置身事内:騰訊的造芯之路

紫霄所有的架構都圍繞着有效算力去做。團隊優化片上緩存設計,并摒棄競品常用的GDDR6記憶體,采用先進的2.5D封裝技術,把HBM2e記憶體與AI晶片合封在一起,進而把記憶體帶寬提升了近40%。

技術疊代一日千裡。紫霄立項後,業内最高性能表現又被競品重新整理。雖然紫霄的設計性能相比這個最高表現還足夠“安全”,但團隊還打算繼續加碼。

經過研究,他們在晶片内部增加了計算機視覺CV加速器以及視訊編解碼加速器,可創新性地大幅減小AI晶片和x86 CPU之間的互動和等待。

即便是以而增加了兩個複雜的自研子產品,團隊仍然在計劃的6個月時間裡完成了從架構确定到驗證以及流片的全部流程。

2021年9月10日,紫霄順利點亮。

置身事内:騰訊的造芯之路

在圖檔和視訊處理、自然語言處理、搜尋推薦等應用場景下,這款晶片打破了制約算力發揮的瓶頸點,最終在實際業務場景性能表現達到了業界标品的2倍。

04

獨立自研,“滄海”一笑

AI小分隊給自己晶片取名“紫霄”,而視訊編解碼則取名“滄海”,頗有海天相接之意。

不同于蓬萊和紫霄主打AI,滄海是一款視訊轉碼晶片。如果說當年QQ相冊圖檔的轉碼問題是蓬萊團隊做硬體的最早契機,那視訊編解碼小分隊在這個方向上的繼續探索,正是完成了一次對初心的呼應。

不同的是,“滄海”的應用場景已經遠超當年的範疇。

當多媒體業務從圖檔時代進化到音視訊直播時代,天量的4K/8K超高清的數字内容如潮水一般持續沖擊着雲計算基礎設施。每增加一個比特的資料,都會帶來相應的轉碼算力和CDN帶寬成本。

這是一道直覺而嚴峻的數學題,而滄海小分隊的解題目标也非常清晰,那就是要做一款業界最強的視訊轉碼晶片,把壓縮率發揮到極緻。

好在,騰訊豐富的多媒體應用場景,以及騰訊雲覆寫的衆多直播互動頭部客戶,為滄海的研發提供了得天獨厚的分析和驗證條件。

置身事内:騰訊的造芯之路

團隊先是推出了滄海的核心自研子產品——硬體視訊編碼器“瑤池”,并決定在滄海完成研發之前給瑤池一次大考。

這個大考就是2020年的MSU世界編解碼大賽,該大賽由莫斯科國立大學(MSU)主辦,十多年來一直是全球視訊壓縮領域最具影響力的頂級賽事,吸引了包括英特爾、英偉達、谷歌、華為、阿裡和騰訊在内的國内外知名科技企業參與。

結果是,瑤池實作1080P@60Hz的視訊實時編碼,力壓群雄獲得了SSIM (結構相似性)、PSNR(峰值信噪比)和VMAF(視訊多方法評估融合)等各項客觀名額評測第一名,以及人眼主觀評價第一的好成績,相比第二名領先了一個身位。

經此硬仗,滄海在技術上得到了充分檢閱。

2022年3月5日,Derick和他帶領的視訊編解碼小分隊收到流片回來的晶片“滄海”,又正逢深圳因疫情而全面遠端辦公。

他們申請特批進入空空蕩蕩的辦公樓。這情景,和兩年前點亮蓬萊時何其相似。

置身事内:騰訊的造芯之路

不曾想到,點亮蓬萊時的一波三折,同樣重制。克服了一些調試中的意外,在一片歡呼中,騰訊的第三款晶片、同時也是完全自主研發的第一款晶片滄海成功點亮。

化滄海為一粟。滄海最終實作以更小的資料量、更小的帶寬提供相同品質的視訊,壓縮率相比行業最佳表現還提高了30%以上。

從蓬萊到紫霄再到滄海,從28納米工藝到12納米工藝,從8個人發展到100多人,從仿真工具一無所有到“天箭驗證平台”正式落成,從努力跟上合作夥伴的節奏到獨立做完全SOC。

兩隻小分隊勝利會師。蓬萊團隊,完成了一場“芯”路進化。

05

“100G”時代,雙木參天

躬身跳進造芯大潮的,不是隻有雲架構平台部。

在多媒體、AI處理積極求變的同時,底層的雲伺服器也面臨着相似的問題:當軟體優化帶來的性能提升無法讓産品擁有差別于競品的明顯競争力時,如何讓性能突破現有天花闆?

2019年,騰訊迎來雲計算業務上的裡程碑——雲伺服器規模突破了100萬。騰訊雲副總裁、騰訊網絡平台部總經理鄒賢能敏銳地觀察到,随着伺服器接入帶寬不斷提升,伺服器用于網絡處理的CPU資源也越來越多。

能否以更低成本的方式來實作伺服器網絡處理,同時還提供更高的網絡性能?騰訊的網絡平台部也将目光投向了軟硬協同與硬體加速。

面對這樣“既要、又要”的挑戰,鄒賢能決定給伺服器做個減法:“把網絡資料處理的負擔從CPU解除安裝出來”。

“智能網卡”的想法就這樣誕生了。

所謂智能網卡,一方面像普通網卡一樣肩負起伺服器的對外網絡通路,實作不同伺服器和資料中心之間的網絡互聯。另一方面,它額外帶有CPU/FPGA/記憶體等智能單元,能分擔一部分伺服器的虛拟化計算任務,實作伺服器整體網絡和存儲性能的加速。

換句話說,網絡平台部要做的事,是要在網卡裡新裝一個伺服器。

置身事内:騰訊的造芯之路

騰訊智能網卡“銀杉”

一開始,團隊希望找到一款現成的商用闆卡降低工作量。

網卡硬體負責人Hayden牽頭開展方案論證和調研,但商用晶片的加速引擎不支援私有協定成為當時直面的第一大挑戰,也是最大的障礙。一些著名的網卡裝置商聽了騰訊的要求就搖頭:

“現在網卡的功能很簡單,你們這個要求太複雜了,很難實作的。”

還有些直白地質疑:“網卡數量這麼多,可靠性要求高,你們自己搞得定嗎?”

難道智能網卡項目剛起步就要流産?

鄒賢能給團隊指明了方向:“既然智能網卡是雲資料中心追求極緻性能與成本的關鍵部件,如果市面上沒有滿足騰訊需求的産品,那我們就自己造一個。”

方向明确之後,路線也很快清晰起來:先從基于FPGA自研智能網卡起步,再開展智能網卡晶片研發。

2020年9月,騰訊第一代基于FPGA的自研智能網卡正式上線,命名為“水杉”,寄寓着團隊希望産品可以像這種珍稀喬木一樣适應性強、快速生長。

疫情期間各種突發需求砸來,初生的水杉沒有被挑戰壓彎。

Hayden回憶道,一個大客戶本身采用了UDP音視訊協定,在屬性上是“不可靠”、允許丢包的,極大地依賴網絡吞吐和穩定性,卻要求高并發、高品質的音視訊傳輸效果。

水杉智能網卡迎難而上,通過大幅提升伺服器的網絡性能,幫助該客戶完成了24小時零丢包的極限壓力測試,穩定上線運作,交出了一份漂亮的答卷。

水杉投入應用後,第二代智能網卡“銀杉”的研發工作也緊鑼密鼓地啟動,并于2021年10月正式上線。這一代智能網卡的網絡端口翻了一番,達到了2*100G。

在又一顆參天大樹的支撐下,騰訊雲對外推出了業界首款自研第六代100G雲伺服器。它的計算性能提升最大220%、存儲性能最大提升100%。單節點接入網絡帶寬相比上一代最大提升4倍,延時下降50%。

置身事内:騰訊的造芯之路

“銀杉”搭載在業界首款自研100G雲伺服器上

“兩棵樹”在網絡硬體解除安裝上取得的巨大收益,令團隊興奮不已。

當FPGA路線逐漸逼近性能和功耗的瓶頸,網絡平台部決定再一次把主動權掌握在自己手裡。騰訊的第四款晶片,也是首款智能網卡晶片應運而生,它也有一個 “仙氣十足”的名字——“玄靈”。

06

“玄靈”乍現,芯事未完

按照計劃,這款7納米工藝的晶片将在2022年底流片。

Hayden受命快速組建起了玄靈晶片研發團隊,不斷挑戰多個“mission impossible”。

從性能名額來看,玄靈支援裝置數量将提升到10K以上,相對商業晶片提升6倍。同時,它的性能相對商業晶片也可提升4倍,通過将原來運作在主機CPU上的虛拟化、網絡/存儲IO等功能解除安裝到晶片,可實作主機CPU的0占用。

這顆短小精悍的晶片,充分诠釋了面向未來極緻性能的“玄”,與面向各類業務需求靈活加速的“靈”。

目前,玄靈項目正在緊鑼密鼓地進行智能網卡流片前的驗證和測試,打造騰訊雲下一代高性能網絡基礎設施;

蓬萊實驗室的AI推理晶片紫霄和視訊轉碼晶片滄海則将量産,與騰訊業務深度融合應用;

還有一些新的晶片項目也在醞釀成長,繼續探索有需要的技術方向,豐富這一本“山海經”。

騰訊海量業務面臨的全新挑戰,以及雲計算高速發展的必然要求,“倒逼”騰訊走上了這條造芯之路。這些從業務需求出發的晶片,必定會深入現實應用來證明自身的價值。

“我們不是無中生有、拍腦袋要去做晶片。我們一開始就知道,騰訊的需求足夠大,足夠我們去做這件事。”盧山說道。

從2010年起,騰訊就開始以雲服務的方式對外開放自身的數字技術與連接配接能力,奔赴這場産業數字化轉型更新的時代大潮。躬身入局,騰訊看到深度的數實融合正在引領全真互聯的技術趨勢。

而在騰訊之外,中國的科技公司們正在向創新的深水區挺進,突破瓶頸的努力顯得愈發重要。無論是數實融合還是上遊創新,硬科技的海面上一片百舸争流,它們都在曆史的浪潮奮楫中流。

在這場大潮中置身事内,騰訊的芯事必然在星辰大海中得到回響。

置身事内:騰訊的造芯之路