如何評價 Google 發布的 Tensor Processing Unit?

http://www.wired.com/2016/05/google-tpu-custom-chips/?from=timelineamp;isappinstalled=0

https://drive.google.com/file/d/0Bx4hafXDDq2EMzRNcy1vSUxtcEk/view


首先這玩意是 asic

然後,把演算法硬體化提升性能不是什麼大不了的事情,我還干過讓 fpga 算量子力學呢,大概把雙電子積分的性能提升了 40 倍吧(當然我是用 OpenCL 寫,用 A 記的工具包編譯的,用 HDL 會更快)


Tensor Processing Unit,這是ASIC,就是application-specific integrated circuit 。

CPU,又叫General Purpose Computing Processing Unit。

Application-Specific VS General Purpose,分界線在於10:1,也就是說一般ASIC需要比CPU有10倍的能效比以上,才值得開。

記得摩爾定律么?18個月,CPU性能翻倍,按照1-2-4-8-16,4個18個月,6年之內,看Google的出不出下一代TPU,或者Intel能不能維持摩爾定律。

在2000-2005間,NPU的概念火了一陣子,然後就沒有然後了。

歷史會不會在TPU上重演,看看吧。


之前Google推Tensorflow的時候,有很多異議的聲音。比如我們可以看到最廣泛使用的一個benchmark數據,TF的性能幾乎在每個項目都是排在幾大流行的庫後面的。

Benchmark TensorFlow · Issue #66 · soumith/convnet-benchmarks · GitHub

一開始也有人說Google為啥開源一個無法分布計算的機器學習庫,當然後來Google更新了Tensorflow把多機的代碼放了出來了。當時為Google的辯護的聲音就是說,Google伺服器多,所以單機性能不重要。

我也一直在疑惑這些問題,因為行業裡面都在用N卡,不可能說,別人用N卡跑Tensorflow性能不好,Google自己跑性能就好了。這沒道理。除非刻意的把TF的代碼分成內部的和外部的,這又和開源的初衷衝突了吧。

然後,Google宣布把一個一個項目轉移到Tensorflow上去,甚至最近剛剛發布了一個號稱全世界最先進的英文分析工具出來,也是基於Tensorflow的。

到了今天一切都可以解釋了。根據Google的blog,他們一年前就開始部署TPU了,也就是在Google內部的Tensorflow都跑在TPU上。而Tensorflow和TPU的名字就一眼可以看出來,Tensorflow是為TPU專門設計的,或者說TPU是為Tensorflow專門設計的。

而Google一直只是排隊內測的機器學習雲,應該也是跑在TPU上面的。我相信Google在沒有在性能/價格,性能/能耗比上做到比其它家有非常大的優勢,它是不會搞機器學習雲的。

大家都知道,Mapredue的思想來自於Jeff Dean的設計。大數據的業界一直都在享受快10年前Google架構帶來的變革。現在該死的Jeff Dean又要改變世界了,看樣子。好可怕。而且這次,這貨從硬體/軟體/雲,三個維度一起下手,壞死了。

我現在唯一擔心的就是這該死的晶元,他們只用於自己的雲,而不賣。那祖國人民就哭死了,一塊牆,搞死中國科研啊。


作為天天給gpu做維護的工人,我覺的谷歌這次發布的tpu應該是一種支持線上業務的晶元,類似fpga。

用來將訓練好的模型載入,為用戶服務。

而gpu作為通用的工具來做訓練任務。

根據現在得到的信息。

TPU在谷歌內部用來和TF配合作為線上服務。

模型訓練依然是gpu,經過quan之後,用TPU載入服務


不負責任的猜測和CISCO, Netlogic, HUAWEI的 NPU 類似

Many Core,Crossbar IO

編程模型類似於彙編(自定義指令xtensa)+ 高級語言(C)的混合編程結構,我說的是驅動,也就是封裝好的庫

每個核死循環執行一個任務

流程如下:

數據(NPU是包)進核後進行計算(NPU是算下一跳地址)結果存入主存(NPU是改寫包的目的地址)

特點就是:

聽話,傻快傻快的


Nvidia表示。。。。。


GPGPU本來就是為了科學計算,,既然現在出了專用晶元,不知道老黃是否會跟進?


推薦閱讀:

誰能詳細講解一下TensorFlow Playground所展示的神經網路的概念?
手頭沒有GPU,學習tensorflow有意義嗎?
如何看待Face++出品的小型化網路ShuffleNet?
CNN做圖像分類,訓練集中的極少量樣本被貼上了錯誤的標籤,是否會嚴重污染訓練集?對訓練結果影響大嗎?

TAG:深度學習DeepLearning | TensorFlow | GoogleIO2016 |