2017年4月27日 星期四

科技創新(七十一):物聯網產業—Google和NVIDIA的人工智慧晶片之戰,到底在吵什麼?

Google一年前推出的深度學習運算晶片TPU(Tensor Process Unit),最近發表報告:TPU比CPU與GPU(圖像處理晶片)快了15至30倍。然後,NVIDIA執行長黃仁勳馬上針對這件事發表意見,告訴大家,NVIDIA的P40 GPU是TPU的2倍,頻寬是其10倍



其實,這只是由不同的角度與比較基準切入。TPU是Google針對深度學習界最多人使用的Google開源平台TensorFlow做的最佳化線路設計的晶片,由於它對應硬體設計的最佳化,所以,不論在運算能力或耗電上,TensorFlow的表現都相對好。
如何比較TPU的效能呢?把TPU跟Intel的Haswell CPU及NVIDIA Tesla K80 GPU這兩款CPU與GPU的效能表現比較,數據顯示TPU的速度快他們15至30倍。
但是,NVIDIA Tesla K80 GPU是NVIDIA五年前的產品,而且Google雖說TPU能用在任何人工智慧的深度學習運算,然而,TPU不但沒對其他系統做最佳化,還設定只能做犧牲精確度的推理運算。
深度學習需要的大量運算訓練,還是需要GPU或是CPU來處理,所以Google最後還是說了,TPU需要搭配GPU或是CPU。
這次Google的說法,就好比告訴大家,我針對某種狀況特殊設計的東西,比別人的東西(NVIDIA Tesla K80 GPU)表現強15至30倍,但是,Google沒說的是,他把別人五年前的產品拿來比。
無怪乎黃仁勳立刻跳出來撰文,輔以數據說明,現在的主力產品P40比這顆TPU快達2倍,頻寬10倍。他的動作,其實是一個很不錯的公關回應:避免產品被誤解,而且是在NVIDIA現在領先業界最多的人工智慧運算晶片產品線上。
不過,也因為TPU是硬體特製,無法修改,才能做到最低耗能,這樣的晶片比起NVIDIA GPU P40自然省電很多。
TPU是專門針對TensorFlow最佳化所推出的晶片,我認為Google這個宣告主要是想告訴使用TensorFlow的開發者社群「我現在用的東西很不錯」,公關宣傳意味濃厚。再加上Google之前雇用李飛飛,並打算收購最大的資料科學家、機器學習開發者社群Kaggle,一連串動作,都在強化Google在人工智慧開發者社群的地位與認同。
其實,Google主打開發者社群,與NVIDIA主攻各種商用人工智慧(特別是無人車用的訓練)其實並不一樣,兩者各有所長。但是為了公關效果,這次雙方都出了招。
Google也強調,它不會對外販售TPU,僅供內部使用。如同《數位時代》2017年4月號所強調的,Google未來10年會強化雲端運算與人工智慧為主要策略方向。TPU,其實就是這個策略的展現。
TPU的運算效能不錯,也說明了原本專長CPU與次專長的GPU的Intel,發現自己在人工智慧落後NVIDIA後,為什麼決定改往人工智慧專用晶片方向上努力的最大原因,是為了能在人工智慧運算晶片戰場上突破現有的困境。
深度學習的訓練需要非常大量的資料,需要非常多的運算單元來做運算,不管是GPU、CPU或TPU,如何相互搭配,才能達到又快又省電的目的,會是接下來各大深度學習應用硬體架構方面的重點。從這次Google、NVIDIA及Intel在人工智慧運算晶片的態度與作法,可以預見,在物聯網前端產品晶片之外,這會是各大運算單元晶片廠的另一個戰場。

沒有留言:

張貼留言