谷歌正在悄悄地打造與并行計算和網絡有密切聯系的處理器,在執行文件的補丁獲得LLVM的接納后,谷歌員工的工作則輕松了許多,因為這將簡化維持主體工具鏈代碼的更新過程。
該款名為"Lanai"的處理器內核比較簡單,它更多地像是一個裝備齊全的微控制器,不太可能運行計算工作負載。但它可能成為一個大規模并行計算機的構建塊。
Lanai是個簡單的32位級的處理器,有32個32位寄存器,包括:兩個固定值寄存器(一個很可能是零);四個狀態寄存器,包括程序計數器、堆棧指針和幀指針;并且預留了兩個寄存器做線程支持用。Lanai并沒有浮點硬件,所以玩不轉涉及太多數學的東西。
谷歌軟件工程師雅克•皮納爾(Jacques Pienaar)表示,Lanai的設計藍圖是從教科書《并行計算機系統結構:硬件/軟件方法》得到的,該書介紹了如何構建有效率、而同時又能并行處理大量數據的機器。
我們曾聽說過谷歌在機器學習系統里在一定程度上用了定制的Nvidia芯片。網絡巨頭谷歌也在旗下數據中心拿ARM和POWER架構做了些實驗性的設計,而且也在玩RISC-V。可以說,我們知道谷歌在探索芯片設計領域;但在公開場合看到谷歌的這樣做倒是有點令人驚訝。
Google人士Chandler Carruth表示,“這是我們的內部硬件,所以沒有很多可供分享的信息,別人也搞不到相關硬件的。我們在搞后端,有一堆后端要搞,各自為戰不可取。尤其是如果有些東西可以在別的后端用上,或是幾個后端需要用共同的基礎架構,這樣做測試起來容易些。“
近日提交的補丁包括:
• LLVM三重性
• Clang支持
• MCExpr和ELF
• Lanai后端(LIB /目標/ Lanai)
盡管源代碼更新里沒有提及供應商,但Google人士用的是Myricom的LANai鏈接器,這說明我們今天所見到的Lanai是Myri具有相同名字的高端網絡控制器的定制衍生之物。Myricom的資產在2013年被馬薩諸塞州的CSPi收購,CSPi主打為數據中心構建超大規模云,以及為數據中心構建超級融合計算和存儲硬件。
谷歌的Lanai很可能是基于Myricom的設計,是個高度定制的可編程網絡控制器。其目的是要在互聯網巨頭的數據中心的結構里里植入智能,也許是為了在旗下的服務器倉庫里融入一個復雜的軟件定義網絡。
截止發稿都未能找到谷歌和CSPi的發言人對上述種種作出評論。