AI晶元 清華大學可重構混合神經網路處理器結構分析

2021-09-10 23:51:20 字數 1557 閱讀 2714

這是大學的ai晶元,代表了學術界的一種想法。

下面分析一下其內部結構。當然,主要還是看其內部乘加邏輯的設計。

(所有來自**截圖)

這款ai晶元的整體邏輯架構如下圖2所示。

可以看出,內部採用了2個pe陣列,其實就是2個脈動陣列,與谷歌的tpu比較像。不過,這裡的脈動陣列的行為比較複雜,與谷歌tpu的脈動陣列並不相同。

這裡的每個pe陣列可以最多配置成四個子陣列。

整體來說,權重儲存在乙個buffer中,data儲存在另外乙個buffer中,思路與寒武紀的diannao、英偉達的nvdla、谷歌的tpu等主流ai晶元一致。

既然是脈動陣列,自然要重複利用資料和權重。

**提到,同一行的pe共享資料,同一列的pe共享權重。

奇怪的是,除了有個脈動陣列外,沒有其他的啟用、bn、add、pooling等模組。

仔細一看,原來這些功能都放在了pe中。

下面來看看pe的結構。

pe的結構圖如下圖所示。

pe比較複雜呀。

首先pe要分2種,一種是普通pe,一種是super pe。

普通pe,只執行卷積和全連線。

super pe,只存在於最下面,執行包括pooling,啟用,以及乘法,加法等rnn中的操作。

這麼多pe,每個pe又這麼複雜,那如何一起工作的?

下面來看看**給的例子。

圖5給出了兩種計算的資料流程圖。

分別為:

(1)cnn -> fc -> rnn

(2)conv -> pool -> fcn/rnn

可以看出,計算卷積,全連線,pooling,rnn的特殊操作等,可以配置不同數量的pe,靈活處理,最大化提公升效率。

下面再看看這樣設計帶來的效能提公升。

清華的這款ai晶元的實際頻率是200mhz。

可以看出,在與另外2款晶元比較時,清華的吞吐量幾乎是其他的6倍,能效也更好。

還是非常不錯的設計。

整體來看,這個ai晶元的結構,利用了脈動陣列的優點,大量復用資料和權重,又結合了可重構的思路,使得pe資源靈活配置,最大限度提公升效率。

不過,可以看出,與谷歌tpu比較,這裡的pe結構非常複雜,內部path走線非常多,另外一些資源的分配有欠缺,比如每個普通pe中只有relu啟用,沒有其他的啟用函式,那麼當卷積需要別的啟用函式,怎麼辦?還能高效處理麼?

特殊的啟用函式,目前只有super pe中有,這也限制了pe資源的配置及效率。

假如,卷積用的啟用是特殊啟用函式,那麼,就只有最下面的pe才能完成正確的啟用,這樣,豈不是又限制了計算速度?

存疑。

蓋茨清華大學演講

尊敬的顧校長,清華大學的老師 同學們 獲得清華大學這所世界一流大學的榮譽博士學位,讓我感到非常榮幸。清華是所有著百年歷史的名校,這裡誕生了很多傑出的科學家 商業和政治領袖。我上一次造訪貴校是在1997年。當時,貴校學生的才華 熱情和創造性給我留下了很深的印象。之後,我決定在中國設立微軟研究院。在沈向...

清華大學 自學能力

一 永遠不要說你已經盡力了 我在高中時體育特別差,跑1000公尺都很要命,從來都是不及格。到了清華之後,第一節體育課,老師告訴我們每年要測3000公尺長跑,跑不過不許畢業,取消推研資格。怎麼辦?於是每天晚上10 30,我們的自習教室關門,操場上的人就多起來了。跑半個小時再回寢室繼續學習,練了乙個學期...

查詢學生資訊 清華大學

牛客網題目鏈結 排序題。先儲存再查詢 include include include include include include include include include include using namespace std const int n 1005 typedef pair i...