當前位置:
首頁 > 新聞 > 重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

選自Google Cloud Platform

作者:Norm Jouppi

機器之心編譯


在去年的谷歌 I/O 開發者大會上,谷歌宣布發布了一款新的定製化硬體——張量處理器(Tensor Processing Unit/TPU),參見機器之心當時的報道《谷歌發布 TPU 只是開始,是時候讓英特爾害怕了》。但很長一段時間以來,谷歌並沒有披露相關成果的細節。今天早些時候,谷歌終於打破了沉默,通過一篇論文介紹了這項研究的相關技術以及與其它硬體的比較。谷歌的硬體工程師 Norm Jouppi 也第一時間在谷歌雲計算博客上刊文介紹了這一研究成果。機器之心在本文中對該博客文章進行了編譯介紹,文後也摘取了原論文的部分內容,讀者可點擊閱讀原文下載此論文。

過去十五年里,我們一直在我們的產品中使用高計算需求的機器學習。機器學習的應用如此頻繁,以至於我們決定設計一款全新類別的定製化機器學習加速器,它就是 TPU。

TPU 究竟有多快?今天,聯合在矽谷計算機歷史博物館舉辦的國家工程科學院會議上發表的有關 TPU 的演講中,我們發布了一項研究,該研究分享了這些定製化晶元的一些新的細節,自 2015 年以來,我們數據中心的機器學習應用中就一直在使用這些晶元。第一代 TPU 面向的是推論功能(使用已訓練過的模型,而不是模型的訓練階段,這其中有些不同的特徵),讓我們看看一些發現:

  • 我們產品的人工智慧負載,主要利用神經網路的推論功能,其 TPU 處理速度比當前 GPU 和 CPU 要快 15 到 30 倍。

  • 較之傳統晶元,TPU 也更加節能,功耗效率(TOPS/Watt)上提升了 30 到 80 倍。

  • 驅動這些應用的神經網路只要求少量的代碼,少的驚人:僅 100 到 1500 行。代碼以 TensorFlow 為基礎。

  • 70 多個作者對這篇文章有貢獻。這份報告也真是勞師動眾,很多人參與了設計、證實、實施以及布局類似這樣的系統軟硬體。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

TPU 的需求大約真正出現在 6 年之前,那時我們在所有產品之中越來越多的地方已開始使用消耗大量計算資源的深度學習模型;昂貴的計算令人擔憂。假如存在這樣一個場景,其中人們在 1 天中使用谷歌語音進行 3 分鐘搜索,並且我們要在正使用的處理器中為語音識別系統運行深度神經網路,那麼我們就不得不翻倍谷歌數據中心的數量。

TPU 將使我們快速做出預測,並使產品迅速對用戶需求做出回應。TPU 運行在每一次的搜索中;TPU 支持作為谷歌圖像搜索(Google Image Search)、谷歌照片(Google Photo)和谷歌雲視覺 API(Google Cloud Vision API)等產品的基礎的精確視覺模型;TPU 將加強谷歌翻譯去年推出的突破性神經翻譯質量的提升;並在谷歌 DeepMind AlphaGo 對李世乭的勝利中發揮了作用,這是計算機首次在古老的圍棋比賽中戰勝世界冠軍。

我們致力於打造最好的基礎架構,並將其共享給所有人。我們期望在未來的數周和數月內分享更多的更新。

論文題目:數據中心的 TPU 性能分析(In-Datacenter Performance Analysis of a Tensor Processing Unit)

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

摘要:許多架構師相信,現在要想在成本-能耗-性能(cost-energy-performance)上獲得提升,就需要使用特定領域的硬體。這篇論文評估了一款自 2015 年以來就被應用於數據中心的定製化 ASIC,亦即張量處理器(TPU),這款產品可用來加速神經網路(NN)的推理階段。TPU 的中心是一個 65,536 的 8 位 MAC 矩陣乘法單元,可提供 92 萬億次運算/秒(TOPS)的速度和一個大的(28 MiB)的可用軟體管理的片上內存。相對於 CPU 和 GPU 的隨時間變化的優化方法(高速緩存、無序執行、多線程、多處理、預取……),這種 TPU 的確定性的執行模型(deterministic execution model)能更好地匹配我們的神經網路應用的 99% 的響應時間需求,因為 CPU 和 GPU 更多的是幫助對吞吐量(throughout)進行平均,而非確保延遲性能。這些特性的缺失有助於解釋為什麼儘管 TPU 有極大的 MAC 和大內存,但卻相對小和低功耗。我們將 TPU 和伺服器級的英特爾 Haswell CPU 與現在同樣也會在數據中心使用的英偉達 K80 GPU 進行了比較。我們的負載是用高級的 TensorFlow 框架編寫的,並是用了生產級的神經網路應用(多層感知器、卷積神經網路和 LSTM),這些應用佔到了我們的數據中心的神經網路推理計算需求的 95%。儘管其中一些應用的利用率比較低,但是平均而言,TPU 大約 15-30 倍快於當前的 GPU 或者 CPU,速度/功率比(TOPS/Watt)大約高 30-80 倍。此外,如果在 TPU 中使用 GPU 的 GDDR5 內存,那麼速度(TOPS)還會翻三倍,速度/功率比(TOPS/Watt)能達到 GPU 的 70 倍以及 CPU 的 200 倍。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

表 1:6 種神經網路應用(每種神經網路類型各 2 種)佔據了 TPU 負載的 95%。表中的列依次是各種神經網路、代碼的行數、神經網路中層的類型和數量(FC 是全連接層、Conv 是卷積層,Vector 是向量層,Pool 是池化層)以及 TPU 在 2016 年 7 月的應用普及程度。RankBrain [Cla15] 使用了 DNN,谷歌神經機器翻譯 [Wu16] 中用到了 LSTM,Inception 用到了 CNN,DeepMind AlphaGo [Sil16][Jou15] 也用到了 CNN。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

圖 1:TPU 各模塊的框圖。主要計算部分是右上方的黃色矩陣乘法單元。其輸入是藍色的「權重 FIFO」和藍色的統一緩存(Unified Buffer(UB));輸出是藍色的累加器(Accumulators(Acc))。黃色的激活(Activation)單元在Acc中執行流向UB的非線性函數。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

圖 2:TPU 晶元布局圖。陰影同圖 1。藍色的數據緩存占晶元的 37%。黃色的計算是 30%。綠色的I/O 是 10%。紅色的控制只有 2%。CPU 或 GPU 中的控制部分則要大很多(並且非常難以設計)。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

圖3:TPU印製電路板。可以插入伺服器 SATA 盤的卡槽,但是該卡使用了 PCIe Gen3 x16 介面。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

圖4:矩陣乘法單元的 systolic 數據流。軟體具有每次讀取 256B 輸入的錯覺,同時它們會立即更新 256 個累加器 RAM 中其中每一個的某個位置。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

表2:谷歌 TPU 與英特爾 Haswell E5-2699 v3、英偉達Tesla K80 的性能對比。E5 有 18 個核,K80 有 13 個 SMX 處理器。圖 10 已經測量了功率。低功率 TPU 比高功率 GPU 能夠更好地匹配機架(rack)級密度。每個 TPU 的 8 GiB DRAM 是權重內存(Weight Memory)。這裡沒有使用 GPU Boost 模式。SECDEC 和非 Boost 模式把 K80 帶寬從 240 降至 160。非 Boost 模式和單裸片 vs 雙裸片性能把 K80 峰值 TOPS 從 8.7 降至 2.8(*TPU 壓模小於等於半個 Haswell 壓模大小)。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

圖5:TPU (die) roofline。 其脊點位於所獲權重內存每位元組運行 1350 次的地方,距離右邊還比較遠。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

表格3:TPU 在神經網路工作載荷中性能受到限制的因素,根據硬體性能計數器顯示的結果。1,4,5,6行,總共100%,以矩陣單元活動的測量結果為基礎。2,3行進一步分解為64K權重的部分,我們的計數器無法準確解釋矩陣單元何時會停頓在第6行中;7、8行展示了計數器結果,可能有兩個原因,包括RAW管道危害,PCIe輸入停止。9行(TOPS)是以產品代碼的測量結果為基礎的,其他列是以性能計數器的測量結果為基礎的,因此,他們並不是那麼完美保持一致。這裡並未包括頂部主伺服器。MLP以及LSTM內存帶寬有限,但是CNN不是。CNN1的測試結果會在文中加以分析。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

圖 9:GPU 伺服器(藍條)對比 CPU、TPU 伺服器(紅條)對比 CPU、TPU 伺服器對比 GPU(橘黃)的相對性能表現/Watt(TDP)。TPU" 是改進版的 TPU(Sec.7)。綠條顯示了對比 CPU 伺服器的比例,淡紫色顯示了與 GPU 伺服器的關係。整體包括了主伺服器的能耗,但不包括增量(incremental)。GM 和 WM 分別是幾何學圖形與加權平均值。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

圖10:CNN0 平台的單位功耗對比,其中紅色和橙色線是 GPU 加 CPU 系統的功率。藍色是英特爾 E5-2699 v3 Haswell CPU 的功率,綠色是英偉達 Tesla K80 的功率,紫色為谷歌 TPU。每個伺服器通常有多個晶元組,以上所有數字都已被整除成單晶元功率。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

圖11:加權平均 TPU 性能作為度量單元,從 0.25 倍擴展到了 4 倍:內存帶寬,時鐘頻率+累加器,時鐘頻率,矩陣單元維度+累加器,以及矩陣單元維度。加權均值使得我們很難看出單個 DNN 的貢獻,但是,MLP 以及 LSTM 提升了 3 倍到 4 倍的內存帶寬,但是,更高的時鐘頻率並沒帶來任何效果。對於 CNN 來說,結果反之亦然;4 倍的時鐘率,2 倍的效果。但是,更快的內存並沒帶來什麼好處。一個更大的矩陣乘法單元並不能對任何 DNN 有幫助。

重磅|谷歌發布TPU研究論文,專註神經網路專用處理器

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

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


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

斯坦福科學家發布用於藥物研究的深度學習演算法
人工智慧產品化的關鍵是基礎架構和數據,而非演算法
微軟發布深度學習工具包CNTK 2.0正式版

TAG:機器之心 |

您可能感興趣

【高通將發布VR、AR專用晶元:還可處理AI任務】
高通發布VR、AR領域專屬 XR1 處理器
NI發布用於管理部署系統的新基礎架構
IEEE發布《人工智慧與機器學習在網路安全領域的應用》
PCR重磅指南│于波教授參與編寫的首部腔內影像臨床應用專家共識正式發布
高通發布 AR/VR 設備專用處理平台 XR1
AMD正式發布新一代銳龍Pro 處理器
吳亦凡新專輯首支單曲《LIKE THAT》正式發布!完整中英文歌詞貼心分享!
美國TMS發布《利用材料創新支持下一代製造技術》報告
高通發布 VR / AR 專用晶元 XR1:主打影音體驗
姜文電影《邪不壓正》發布IMAX版海報
「MD PHOTO」吳勝雅等藝人出席 MBC新劇《秘密和謊言》發布會
ECA新聞:EMA發布關於使用PDE值的最終問答文件
優科網路發布SmartZone網路控制器——業內首款基於控制器的有線無線管理系統
高通正式發布AR/VR專用晶元XR1
重新定義PC設備?鎚子科技發布堅果TNT「工作站」
【智造頭條】歐盟擬斥資6億美元研發殺手機器人;傳高通將發布VR、AR專用晶元:可處理AI任務
APUS發布《印度互聯網金融報告》
鎚子科技:堅果TNT工作站正式發布
LOEWE發布限量版藝術T恤為捐助視覺艾滋組織