例如,谷歌工程師們采用了傳奇的超級計算機公司Cray所使用的技巧。他們將芯片中負責神經(jīng)網(wǎng)絡(luò)計算的“巨大的矩陣乘法單元”與“通用向量單元”和“通用標量單元”結(jié)合在一起。標量單元和向量單元的結(jié)合讓Cray的性能優(yōu)于其他處理器。
谷歌開發(fā)了自己的新型算法結(jié)構(gòu)來編程芯片。所謂的“bfloat16”是一種表示實數(shù)的方法,可以提高神經(jīng)網(wǎng)絡(luò)數(shù)字運算的效率。bfloat16的全稱是truncated 16-bit floating point(截斷浮點數(shù)),被通俗地稱為“brain float”。
TPU采用最快的內(nèi)存芯片,即所謂的高帶寬內(nèi)存(HBM)。在訓(xùn)練神經(jīng)網(wǎng)絡(luò)時,對內(nèi)存容量的需求也在激增。
Young說:“內(nèi)存在訓(xùn)練中更加集中。不只是數(shù)億個權(quán)重,還涉及處理神經(jīng)網(wǎng)絡(luò)激活變量的問題”。
谷歌也在調(diào)整編程神經(jīng)網(wǎng)絡(luò)的方式,以充分利用硬件。他們在數(shù)據(jù)和模型并行性方面做了大量工作,包括“Mesh TensorFlow”等項目,這是對TensorFlow編程框架的改編,目的是將數(shù)據(jù)和模型并行性在pod-scale上結(jié)合起來。
有一些技術(shù)細節(jié)Young不愿透露。他指出,谷歌沒有過多地談?wù)摗盎ミB”(interconnects),即數(shù)據(jù)在芯片中移動的方式,只是說“我們有巨大的連接器”,拒絕提供更多信息。
Young談到一些可能并不遙遠的更有趣的計算領(lǐng)域。例如,他建議通過模擬芯片進行計算,這種電路將輸入作為連續(xù)值而不是作為1和0來處理,這樣可以發(fā)揮重要作用。他說:“也許我們將從模擬領(lǐng)域進行采樣,在物理、模擬計算或非易失性技術(shù)方面確實有一些很酷的東西。”
電子發(fā)燒友App
































評論