谷歌 AI芯片
2018年7月Google在其云端服務(wù)年會(huì)Google Cloud Next上正式發(fā)表其邊緣(Edge)技術(shù),與另兩家國際公有云服務(wù)大廠Amazon/AWS、Microsoft Azure相比,Google對(duì)于邊緣技術(shù)已屬較晚表態(tài)、較晚布局者,但其技術(shù)主張卻與前兩業(yè)者有所不同。
Google AI布局逐漸走向邊緣
除了同樣提倡基礎(chǔ)的物聯(lián)網(wǎng)閘道器(IoT Gateway)軟件Edge IoT Core、人工智能/機(jī)器學(xué)習(xí)(AI/ML)軟件Edge ML外,還針對(duì)人工智能/機(jī)器學(xué)習(xí)推出專屬的加速運(yùn)算芯片,稱為Google Edge TPU,成為此次盛會(huì)一大焦點(diǎn)。
在Google發(fā)表Edge TPU前已發(fā)表過Cloud TPU芯片,首次發(fā)表是在Google另一個(gè)更全面、更盛大的例行年會(huì)Google I/O 2016上。Cloud TPU顧名思義用于云端機(jī)房,而TPU是TensorFlow Processing Unit的縮寫,言下之意是針對(duì)TensorFlow而設(shè)計(jì)的硬件加速運(yùn)算器,TensorFlow則是Google于2015年11月提出的人工智能框架,是目前諸多人工智能框架中的一大主流,其他知名的框架如Caffe/Caffe 2、Apache MXnet等。
目前人工智能框架百花齊放,其他常見的亦有Keras、PyTorch、CNTK、DL4J、Theano、Torch7、Paddle、DSSTNE、tiny-dnn、Chainer、neon、ONNX、BigDL、DyNet、brainstorm、CoreML等。若以簡(jiǎn)單譬喻而言,人工智能的開發(fā)撰寫如同文書撰寫,人工智能框架就如同記事本、Word等文書處理器,功效在于協(xié)助與便利開發(fā)撰寫。
Google自行開發(fā)設(shè)計(jì)的Cloud TPU僅用于自家云端機(jī)房,且已對(duì)多種Google官方云端服務(wù)帶來加速效果,例如Google街景圖服務(wù)的文字處理、Google相簿的照片分析、乃至Google搜尋引擎服務(wù)等。Google Cloud TPU也改版快速,2016年首次發(fā)表后2017年推出第二代,2018年推出第三代芯片
不過,Google之后對(duì)Cloud TPU的技術(shù)態(tài)度似有變化。2018年2月宣布可申請(qǐng)租用TPU運(yùn)算力,如同Google Cloud Platform(GCP)的公有云服務(wù)般,依據(jù)運(yùn)算芯片的使用時(shí)間計(jì)費(fèi),每小時(shí)6.5美元(至2018年9月已降至4.5美元) ,與GCP的CPU租用服務(wù)相比相當(dāng)昂貴,GCP的CPU租用服務(wù),以***彰化濱海工業(yè)區(qū)的機(jī)房(不同位置的機(jī)房費(fèi)率不同)而言,標(biāo)準(zhǔn)型計(jì)價(jià)約在0.055至5.28美元間,且8種計(jì)費(fèi)費(fèi)率中有5種低于1美元/小時(shí)。
TPU租用費(fèi)亦同樣高于GPU租用,GCP的NVIDIA GPU租用費(fèi)率約在0.49至2.48美元間,視規(guī)格等級(jí)而異(Tesla K80/P100/V100)。Google Cloud TPU雖可租用,但Google是否愿意單獨(dú)銷售Cloud TPU給系統(tǒng)商,讓系統(tǒng)商制造及銷售TPU運(yùn)算系統(tǒng),仍待進(jìn)一步觀察。
在Google推出云端用的Cloud TPU后,讓人未預(yù)料的是Google也針對(duì)邊緣提出專屬的TPU芯片,然在此前仍有些征兆,即2017年11月Google提出輕量版的TensorFlow Lite(某種程度取代此前的TensorFlow Mobile),使電力有限的行動(dòng)裝置也能支援TensorFlow,2018年推出的Edge TPU芯片即是以執(zhí)行TensorFlow Lite為主,而非原宗的TensorFlow。
Google Edge裝置內(nèi)的作業(yè)系統(tǒng)為L(zhǎng)inux或Android Things,而后執(zhí)行Google Edge IoT Core基礎(chǔ)功能軟件、Google Edge ML人工智能軟件,并可選用配置Google Edge TPU。
Google Edge軟硬件架構(gòu)概觀
圖3左側(cè)為物聯(lián)網(wǎng)感測(cè)器,右側(cè)為Google云端系統(tǒng)及服務(wù)。另外Edge TPU也支援Android Neural Networks 神經(jīng)網(wǎng)路應(yīng)用程式接口(API),簡(jiǎn)稱NNAPI。NNAPI于在2017年12月Android 8.1釋出時(shí)一同提出,NNAPI可視為TensorFlow Lite、Caffe2等框架的基礎(chǔ)層。由此可知Edge TPU所支援呼應(yīng)并加速的軟件,于2017年便已先行到位。
NNAPI可透過硬件抽象層與驅(qū)動(dòng)程式,運(yùn)用GPU、特定處理器或數(shù)位訊號(hào)處理器(DSP)等,使人工智能運(yùn)算加速。資料來源:Google官網(wǎng)與Cloud TPU不同的是,Edge TPU估將由Google銷售給系統(tǒng)商,再由系統(tǒng)商配置于前端裝置內(nèi),包含感測(cè)器節(jié)點(diǎn)、裝置或閘道器內(nèi),Edge TPU不是自用或租用而是銷售。
Edge TPU技術(shù)輪廓
雖然Google對(duì)Cloud TPU、Edge TPU的技術(shù)資訊揭露均不多,但仍有若干資訊可推測(cè)其背后意向與考量。
首先是Google很明白Edge定位的系統(tǒng)運(yùn)算力有限,所以Edge TPU的運(yùn)算任務(wù)僅在于執(zhí)行已訓(xùn)練完成的人工智能模型,即推測(cè)運(yùn)算、推算工作(Inference,今日多譯成“推論”),真正要大量耗費(fèi)運(yùn)算力的模型訓(xùn)練(Training),依然由充沛運(yùn)算力的系統(tǒng)事先進(jìn)行,如工作站、服務(wù)器、云端等,透過CPU/GPU/TPU進(jìn)行訓(xùn)練。
其次,Edge TPU強(qiáng)調(diào)可同時(shí)執(zhí)行處理多組每秒30張高清晰度畫質(zhì)的人工智能判別運(yùn)算,顯示Edge TPU將用于視訊影像類的人工智能應(yīng)用,且為即時(shí)判別(30FPS)。
更進(jìn)一步的說明,Edge TPU只負(fù)責(zé)人工智能的加速判別、加速推算,僅為加速器、輔助處理器的角色。因此,必須與系統(tǒng)的主控芯片溝通聯(lián)系,這方面Edge TPU提供了兩種介接的方式,一是PCI Express接口,另一是USB接口。兩種接口均適合嵌入式設(shè)計(jì),然PCI Express傳輸率較高,可避免傳輸瓶頸,而USB接口較可能定位在后裝型運(yùn)用,即前端裝置已經(jīng)存在,但仍可透過USB連接Edge TPU,帶來加速效果。
評(píng)論