訂閱電子報∣ 友善列印字體大小 文章分享-Facebook 文章分享-Plurk 文章分享-Twitter
百度推出的一顆晶片能表明什麼
獲取產業訊息零時差!立即訂閱電電公會電子報。
剛剛在加州Hot Chips大會上,百度發佈XPU,這是一款256核、基於FPGA的雲計算加速晶片。合作夥伴是賽思靈(Xilinx)。百度也在這次的大會上,透露了關於這款晶片的更多架構方面的細節。

過去幾年,百度在深度學習領域,尤其是基於GPU的深度學習領域取得了不錯的進展。而且,百度也在開發被稱作XPU的新處理器。

百度研究員歐陽劍表示,百度設計的晶片架構突出多樣性,著重於計算密集型、基於規則的任務,同時確保效率、性能和靈活性的最大化。今天,他在Hot Chips大會上與來自FPGA廠商Xilinx的人士一同發佈了XPU。
 
XPU的目標是在性能和效率之間實現平衡,並處理多樣化的計算任務。FPGA加速器本身很擅長處理某些計算任務,但隨著許多小內核交織在一起,多樣性程度將會上升。

歐陽劍表示:“FPGA是高效的,可以專注於特定計算任務,但缺乏可程式設計能力。傳統CPU擅長通用計算任務,尤其是基於規則的計算任務,同時非常靈活。GPU瞄準了平行計算,因此有很強大的性能。XPU則關注計算密集型、基於規則的多樣化計算任務,希望提高效率和性能,並帶來類似CPU的靈活性。”

目前XPU有所欠缺的仍是可程式設計能力,而這也是涉及FPGA時普遍存在的問題。到目前為止,XPU尚未提供編譯器。不過歐陽劍表示,該團隊將會很快開發一款編譯器。

歐陽劍還表示
為了支援矩陣、卷積,以及其他大大小小的內核,我們需要一個配備高頻寬低延時記憶體,以及高頻寬I/O介面的大型數學陣列。FPGA中XPU的DSP單元提供了並行處理能力,片外DDR4和HBM介面優化了資料傳輸,而片上SRAM則提供了必要的存儲特性。

在Micro Benchmark測試中,對於計算密集型、常設記憶體訪問的計算任務,XPU的效率與x86內核類似。對於資料同步的計算任務,XPU的可擴展性應當可以進一步優化。而對於沒有資料同步的計算任務,XPU的可擴展性與核心數量呈線性關係。

這就是問題所在。如前所述,XPU仍然沒有配備編譯器。這款處理器在FPGA上實現,通過訂制的邏輯電路提供指令。這些小核心類似於CPU,開發者只能使用組合語言,而所有的執行都由主機來控制。整個流程包括拆分計算任務,編寫XPU代碼,調用專用的邏輯函數,從而在Linux平臺上進行編譯和運行。
 
歐陽劍稱:“在百度,我們使用FPGA已有多年時間。我們的資料中心、雲計算平臺和自動駕駛項目中有大量FPGA。我們非常瞭解FPGA的優缺點,以及如何優化。憑藉XPU的大型核心,我們專注於多樣化的計算任務。”

去年有媒體報導了基於百度深度學習SDA的SQL加速器。當時的資料流程基於SA架構。根據歐陽劍的描述,這也是XPU記憶體頻寬和延時優勢的核心。

歐陽劍同時展示了今年完成的一些benchmark測試,但資訊非常粗略。不過,這只是百度第一次公開展示XPU。

如果XPU被證明可以用於AI、資料分析、雲計算和無人駕駛,那麼百度可能需要用ASIC技術去開發XPU。
訂閱電子報 友善列印 字體大小:
獲取產業訊息零時差!立即訂閱電電公會電子報。