當前位置:
首頁 > 科技 > 自打Google的TPU2橫空出世後,我們還差一個用途詳解呢

自打Google的TPU2橫空出世後,我們還差一個用途詳解呢



自打Google的TPU2橫空出世後,我們還差一個用途詳解呢




自打Google的TPU2橫空出世後,我們還差一個用途詳解呢



圖:pixabay

正如我們之前所報道的那樣,Google上周在Google I/O大會上推出了第二代TensorFlow Processing Unit(TPU2)。Google稱這個新一代產品為「Google Cloud TPUs」,但僅僅提供了關於TPU2晶元和使用它的系統的很少的一部分信息,只有幾張彩色照片。圖片能夠表達的信息是遠遠多於語言的,所以在這篇文章中,我們將對照片進行深入挖掘,並基於圖片和Google僅提供的幾個細節來發表我們的見解和看法。


首先,Google不太可能出售基於TPU的晶元、主板或伺服器——TPU2是Google內部專屬的產品。Google只能提供兩條通道來直接訪問TPU2硬體,一條是通過TensorFlow Research Cloud(TRC),這是一項「高度選擇性」項目,旨在使研究人員可以分享他們關於TPU2可加速的代碼類型的發現,另一條是通過Google Compute Engine Cloud TPU Alpha,我們假設這個方案也是高度選擇性的,因為這兩條市場化路線共享一個註冊頁面。


Google專門設計了TPU2,以加速深度學習工作負載背後面向消費者的軟體,如搜索,地圖,語音識別以及無人駕駛車輛訓練等研究項目。我們對Google TRC目標粗略定位為,Google希望招募研究團體,以尋找能夠與TPU2 hyper-mesh更好匹配的工作。Google表示,TRC項目在開始的時候是小型的,但隨著時間的遷移會慢慢擴大。我們將無法直接訪問tpu2直到谷歌的研究推廣找到更普遍的應用,並且Google將TensorFlow硬體實例作為谷歌雲平台公共雲中的基礎架構。


Google為深度學習和分類任務設計的原TPU——運行模式已經被訓練在GPU上。TPU是通過兩個PCI-Express 3.0 x8邊緣連接器連接到處理器主板的協處理器(參見下面兩張照片的左下角),總共有16 GB / s的雙向帶寬。TPU消耗高達40瓦,遠高於PCI-Express電源規格,並為8位整數運算提供92兆操作(TOPS),或為16位整數運算提供23 TOPS。為了進行比較,Google聲稱TPU2在每秒45兆浮點運算(teraflops)時達到峰值,大概是FP16運算精度。


TPU沒有內置的調度功能,也不能被虛擬化。它是一個直接連接到一個伺服器主板的簡單矩陣乘法協處理器。



自打Google的TPU2橫空出世後,我們還差一個用途詳解呢



Google的第一代TPU卡:A,無散熱片;B,帶有散熱片


在主板處理能力或其PCI-E 吞吐量超負載前,Google從不會透露有多少TPU連接到一個伺服器主板。協處理器只需要做一件事,它需要以任務設置和拆卸的形式,從主機處理器獲取大量信息,並管理每個TPU數據的傳輸帶寬。


Google已將其TPU2設計用於四機架機櫃,Google將其稱為pod。機櫃是相對於一組工作負載的標準機架配置(從半機架到多機架)。機櫃有助於大型數據中心所有者更輕鬆,更便宜的進行購買,安裝和部署。例如,Microsoft的Azure Stack標準半機架將會是一個機櫃。

四機架機櫃大小主要取決於Google正在使用的銅纜類型和全速運行的最大銅線運行長度。下圖顯示了機櫃的高層次組織。


我們首先注意到,Google通過兩根電纜將每個TPU2板連接到一個伺服器處理器板。可能的是,Google將每個TPU2板連接到兩個不同的處理器板,但即使Google也不希望混淆該拓撲的安裝,編程和調度複雜性。如果在伺服器主板和TPU2板之間存在一對一的連接,則要簡單得多。



自打Google的TPU2橫空出世後,我們還差一個用途詳解呢



Google的TPU2 stamp :A是CPU機架,B是TPU2機架,C是TPU2機架,D是CPU機架; 固體箱(藍色):機架不間斷電源(UPS); 虛線框(紅色)是電源; 和虛線框(綠色):機架式網路交換機和機架式交換機頂部


Google顯示其TPU2 stamp的三張不同的照片,所有三張照片的配置和布線看起來都一樣。TPU2布線的Garish顏色編碼有助於進行此比較。



自打Google的TPU2橫空出世後,我們還差一個用途詳解呢



三個Google TPU2機櫃


Google公布了TPU2板的頂視圖,以及該板的前面板連接器的特寫。TPU2的四個板象限中共享板配電系統。我們認為四個TPU2板象限也通過一個簡單的網路交換機共享網路連接。它看起來像每個電路板象限是一個單獨的子系統,而這四個子系統在電路板上沒有彼此連接。


自打Google的TPU2橫空出世後,我們還差一個用途詳解呢



TPU2板的頂視圖:A是四個帶散熱片的TPU2晶元; B是每個TPU2兩根BlueLink 25GB / s電纜; C是每個板的兩條全向路徑架構(OPA)電纜; D是電源連接器的背面,E最有可能是網路交換機


前面板連接看起來像一個QSFP網路連接器,其兩側有四個方形橫截面連接器,這是我以前沒有看到的。IBM BlueLink規範在最小25 GB / s配置(稱為「子鏈路」)中的每個方向(總共16個通道)上定義了八個200 Gb /秒信號通道。Google是OpenCAPI的成員,也是OpenPowerFoundation的創始成員,所以BlueLink是有道理的。



自打Google的TPU2橫空出世後,我們還差一個用途詳解呢



TPU2前面板連接


電路板正面中心的兩個連接器看起來像帶有銅雙絞線的QSFP型連接器,而不是光纖。這就提供了兩個選擇——10 Gb /秒乙太網或100 Gb /秒英特爾全向路徑架構(OPA)。兩個100 Gbps OPA鏈路可以組合成一個25 GB / s的聚合雙向帶寬,這與BlueLink速度是相匹配的,所以我們認為它是Omni-Path。


這些銅纜,藍鏈或OPA都不能在最大信號速率下運行超過3米或10英尺。它以3米物理跨距將鏈接著CPU和TPU2板的互連拓撲結合在一起。Google使用彩色電纜;而我的猜測是,這使組裝更容易,而且沒有布線錯誤。請參見上圖中最前面連接器下方的電纜顏色的貼紙。我們認為,顏色編碼是Google計劃大規模部署這些TPU2機櫃的標誌。


白色電纜最有可能是1 Gb /秒乙太網系統管理網路。我們沒有看到Google可以將管理網路連接到照片中的TPU2板。但是,基於白色電纜的路由,我們可以假設Google將管理網路從後端連接到處理器板。也許處理器板通過OPA連接管理和評估TPU2板的健康狀況。

Google的TPU2機架機櫃具有雙邊對稱性。在下圖中,我們翻轉了處理器機架D以將其與處理器機架A進行比較。這兩個機架是相同但相互鏡像的圖像。之後的圖,很明顯,機架B和C也是彼此的鏡像。



自打Google的TPU2橫空出世後,我們還差一個用途詳解呢



將兩個CPU機架與機架D進行比較



自打Google的TPU2橫空出世後,我們還差一個用途詳解呢



將兩個CPU機架與機架C進行比較


Google的照片中沒有足夠的可見的連線來確定確切的互連拓撲,但它看起來像是一種超網格互連。


我們相信,CPU板是標配英特爾至強雙socket主板,適合Google的1.5英寸伺服器外形尺寸。它們是當前一代主板設計,考慮到它們有OPA,它們可能是Skylake板(參見下面的功耗討論)。我們相信它們是雙socket主板,僅僅是因為我還沒有聽說過許多單socket主板是通過英特爾供應鏈的任何一部分發貨的。但是隨著新市場進入者,如具有「Naples」Epyc X86伺服器晶元的AMD,和具有Centriq ARM伺服器晶元的Qualcomm強調單socket配置,這種情況可能會有所改變。


我們認為Google將每個CPU板連接到一個TPU2板上,使用兩條OPA電纜實現了25 GB / s的總帶寬。這種一對一的連接解決了TPU2的一個關鍵問題——Google以TPU2晶元與Xeon插座的比例為2:1的方式設計了TPU2 stamp。也就是說,每個雙插槽Xeon伺服器都有四個TPU2晶元。

TPU2加速器與處理器的這種緊密耦合與深度學習訓練任務中GPU加速器的4:1至6:1的典型比例大不相同。低2:1的比例表明,Google保留了原始TPU中使用的設計理念:「與GPU相比,TPU在理念上更接近於FPU(浮點單元)協處理器。」處理器在Google的TPU2架構中仍然有很多工作要完成,但它正在將所有的矩陣數學卸載到TPU2上去。


我們看不到TPU2 機櫃中的任何存儲。大概這是在下圖中大束藍色光纜所追蹤的那樣。數據中心網路連接到CPU板,但是並沒有光纖電纜連接到機架B和C上,同樣,TPU2板上沒有網路連接。



自打Google的TPU2橫空出世後,我們還差一個用途詳解呢



許多光纖帶寬連接到Google數據中心的其餘部分


每個機架有32個計算單位,無論是TPU2還是CPU都是如此。因此,每個機櫃中有64個CPU板和64個TPU板,共有128個CPU晶元和256個TPU2晶元。


谷歌表示,其TRC包含1000個TPU2晶元,但是這一數字略有下降。四個機櫃包含1024個TPU2晶元。因此,四個機櫃是Google已經部署了了的TPU2晶元數量的下限。從Google I / O大會期間發布的照片中可以看到三個(業可能是四個)機櫃。


不清楚處理器和TPU2晶元是如何通過一個機櫃進行聯合,以便TPU2晶元可以在超網格中跨鏈接有效地共享數據的。但我們幾乎可以肯定,TRC不能跨越四個機櫃(256個TPU2晶元)中的一個以上的單個任務。原始TPU是一個簡單的協處理器,因此處理器處理所有數據流量。在這種架構中,處理器通過數據中心網路從遠程存儲器訪問數據。


關於機櫃模型也沒有很多的描述。 TPU2晶元可以在OPA上使用遠程直接存儲器訪問(RDMA)從處理器板上的內存中載入自己的數據嗎?這好像是可以的。處理器板似乎也可能在機柜上執行相同操作,創建大型共享內存池。該共享內存池不會像Hewlett Packard Enterprise的機器共享內存系統原型中的內存池那麼快,但是使用25 GB / s的鏈接,它的速度也不會太慢,內存依舊很大,這是在兩位tb範圍內的(每個DIMM 16 GB,每個處理器有8個DIMM,每個板有兩個處理器,64個板產生16 TB的內存)。


我們推測,在一個機柜上安排一個需要多個TPU2的任務看起來像這樣:

處理器池應該有一個機櫃的超網格拓撲圖,哪些TPU2晶元可用於運行任務。


處理器組可能聯合編程每個TPU2以明確地連接位於兩個相連接的TPU2晶元之間的網格。


每個處理器板將數據和指令載入到其配對的TPU2板上的四個TPU2晶元上,包括網狀互連的流量控制。


處理器在互連的TPU2晶元之間同步引導任務。


當任務完成時,處理器從TPU2晶元收集所得到的數據(該數據可能已經通過RDMA存儲在全局存儲器池中),並將TPU2晶元標記為可用於另一任務。


這種方法的優點是TPU2晶元不需要理解多任務,虛擬化或多租戶——處理器的任務是處理所有跨越機櫃的這些任務。


這也意味著如果Google曾經提供Cloud TPU實例作為其Google Cloud Platform自定義機器類型IaaS的一部分,該實例將必須包括處理器和TPU2晶元。


還不清楚的是,工作負載能否可以跨stamp進行縮放,並保留超級網格的低延遲和高吞吐量。雖然研究人員可能可以通過TRC訪問1,024個TPU2晶元中的一些,但跨stamp進行擴展工作負載看起來仍是一個挑戰。研究人員可能有能力連接多達256個TPU2晶元的集群,這足以令人印象深刻,因為雲GPU連接目前正在擴展到32個互連設備(通過Microsoft的Olympus HGX-1設計)。


Google的第一代TPU在負載下消耗40瓦特,同時以23 TOPS的速率執行16位整數矩陣乘法。Google將TPU2的運行速度提高到45 TFLOPS,同時通過升級到16位浮點運算來提高計算複雜度。根據一個粗略的經驗法則來看的話,這至少是兩倍的功耗——如果除了將速度提高兩倍以及轉移到FP16外,什麼也不做的話,TPU2必須消耗至少160瓦。散熱器尺寸顯示出更高的功耗,某處甚至高於200瓦特。


TPU2板具有位於TPU2晶元頂部的巨大散熱片。它們是多年來我看到的最高的風冷散熱片。它們具有內部密封環液體循環。在下圖中,我們將TPU2散熱片與過去幾個月看到的最大的可比散熱片進行相比較。


自打Google的TPU2橫空出世後,我們還差一個用途詳解呢



散熱片遍歷:A是四路TPU2主板側面視圖,B為雙IBM Power9「Zaius」主板,C為雙IBM Power8「明斯基」主板,D為雙英特爾至強Facebook「優勝美地」主板,E為Nvidia P100 SMX2 模塊與散熱片和Facebook「Big Basin」主板


這些散熱器的尺寸大多「每個超過200W」。很容易看出,它們比原始TPU上的40瓦散熱器大得多。這些散熱器填補了兩個Google垂直的1.5英寸,Google外形尺寸單元空缺,因此它們幾乎高達三英寸。(Google機架單元高度為1.5英寸,比行業標準1.75英寸U型高型號矮一點)。


這是一個很好的選擇,每個TPU2晶元還有更多的內存,這有助於提高吞吐量並增加功耗。


此外,Google從單晶元TPU晶元(PCI-Express插槽向TPU卡供電)轉移到單晶元TPU2板設計共享雙OPA埠和交換機,以及為每個TPU2晶元提供兩個專用的BlueLink埠。 OPA和BlueLink都增加了TPU2板級功耗。


Google的開放計算項目機架規格設備顯示6千瓦,12千瓦和20千瓦的電力輸送配置文件; 20千瓦的功率分配可以實現90瓦的CPU處理器插座。我們猜測,使用Skylake一代Xeon處理器和處理大部分計算負載的TPU2晶元,機架A和D可能使用20千瓦電源。


而機架B和C就是另一個不同的故事了。功率輸送為30千瓦,能夠為每個TPU2插座提供200瓦的功率輸送;每個機架36千瓦將為每個TPU2插座提供250瓦的功率輸送。36千瓦是一種常見的高性能計算能力傳輸規範。我們認為,每晶元250瓦功耗也是Google願意為上述巨大的TPU2散熱器支付的唯一原因。因此,單個TPU2 機櫃的功率傳輸可能在100千瓦至112千瓦範圍內,並且可能更接近較高數量。


這意味著TRC在滿負荷運行時消耗將近一百兆瓦的功率。雖然四枚郵票部署成本昂貴,但卻是一次性的資本費用,並不佔用大量的數據中心空間。然而,半數兆瓦的電力是大量經營費用,持續資助學術研究,即使是一家Google規模的公司。如果TRC在一年內仍然運行,這表明Google正在認真研究其TPU2的新用例。


TPU2 機櫃包含256個TPU2晶元。每個TPU2晶元的性能為45 teraflops,每個stamp產生總共11.5 petaflops的深度學習加速器的性能。這是令人印象深刻的,即使它確實是FP16的高峰表現。深度學習訓練通常需要更高的精度,因此FP32矩陣乘法性能可能是FP16性能的四分之一,或者每個機櫃約為2.9 petaflop,整個TRC為11.5 FP32 petaflops。

在峰值性能方面,這意味著在整個機柜上的FP16操作(不包括CPU性能貢獻或位於機櫃之外的存儲),每千瓦跳躍到115吉比特每千瓦。


英特爾公布了雙插槽Skylake生成Xeon核心計數和功耗配置後,可以計算Xeon處理器的FP16和FP32性能,並將其增加到每瓦特的總體性能。


關於Google的TPU2機櫃行為還沒有足夠可靠的信息將其與像Nvidia的「Volta」這樣的新一代商業加速器產品進行比較。架構的差別太大了,無需對同一任務中的兩個架構進行基準測試。比較峰值FP16的性能就像將兩台具有不同處理器,存儲器和基於處理器頻率的圖形選項的PC的性能進行比較。


也就是說,我們認為真正的比賽不在晶元級別。挑戰是將計算加速器擴展到普通比例。NVIDIA公司正在採用NVLink的第一步,從處理器上獲得更大的加速器獨立性。Nvidia正在將其軟體基礎架構和工作負載從單一GPU擴展到GPU集群。


Google選擇將其原始TPU擴展為直接鏈接到處理器的協處理器。TPU2還可以進行擴展,作為以直接2:1比例的加速器進行處理任務。然而,TPU2超網格編程模型似乎沒有可以將擴展任務做得很好的工作負載。但是,Google正在尋找第三方幫助來查找使用TPU2架構擴展的工作負載。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器人圈 的精彩文章:

重磅:中國人工智慧產業創新聯盟成員超百家—入盟通道持續開啟
走,跟AlphaGo下棋去!
理解這25個概念,你的「深度學習」才算入門!
NLP如何檢查拼寫錯誤?用Tensorflow,你也可以
谷歌今天又開源了,這次是Sketch-RNN

TAG:機器人圈 |

您可能感興趣

La Prairie萬元精華橫空出世,一瓶相當於一只GUCCI!你會買哪個?
廉價版 iPhone Xc 橫空出世,買不起 iPhone X 的你,會選擇它嗎?
廉價版iPhoneXc橫空出世,買不起iPhoneX的你會選擇它嗎?
首款全面屏橫空出世,MateBook X Pro
Google Edge TPU橫空出世!細思極恐,國內AI晶元公司寒冬降臨!
又一山寨iPhone X橫空出世:「ID全面屏」也是醉了
vivo X27即將到來,iQOO橫空出世讓其定價成難題!
iQOOPro橫空出世?碾壓黑鯊2pro,真香價讓人無法自拔
一箭三雕!OPPOFindX橫空出世,OPPO主要有3個目的
BALENCIAGA 「澡堂拖」 橫空出世!售價可不比 Triple S 親民多少!
motorola z3橫空出世,曾經的機皇華為P20難道就此讓位?
Circle收購Poloniex交易所,「金融巨鱷」橫空出世
高配版本橫空出世!皮質版Nike React Element 87不透明也很酷!
華為HarmonyOS系統橫空出世,可能有太多人夜不能寐!
vivo NEX雙屏版:橫空出世,帶給你不一樣的手機體驗
如果沒有當年iPhone的橫空出世,現在的手機會是什麼樣的
趕超tfboys?這個橫空出世的組合,光靠成員的顏值就可以撐下去了
你沒見過的全水晶鞋身!北極光 Air Jordan 1 橫空出世
印度首顆CPU橫空出世!以神話人物Shakti命名
新款全面屏iPad pro即將橫空出世