剛剛在加州 Hot Chips 大會上,百度發(fā)布 XPU,這是一款 256 核、基于 FPGA 的云計(jì)算加速芯片。合作伙伴是賽思靈(Xilinx)。百度也在這次的大會上,透露了關(guān)于這款芯片的更多架構(gòu)方面的細(xì)節(jié)。
過去幾年,百度在深度學(xué)習(xí)領(lǐng)域,尤其是基于 GPU 的深度學(xué)習(xí)領(lǐng)域取得了不錯(cuò)的進(jìn)展。而且,百度也在開發(fā)被稱作 XPU 的新處理器。
△ 百度解釋了 FPGA 上 AI 和數(shù)據(jù)分析工作負(fù)載的情況
百度研究員歐陽劍表示,百度設(shè)計(jì)的芯片架構(gòu)突出多樣性,著重于計(jì)算密集型、基于規(guī)則的任務(wù),同時(shí)確保效率、性能和靈活性的最大化。今天,他在 Hot Chips 大會上與來自 FPGA 廠商 Xilinx 的人士一同發(fā)布了 XPU。
△ 百度去年宣布采用 Xilinx Kintex UltraScale FPGA 加速數(shù)據(jù)中心的額機(jī)器學(xué)習(xí)應(yīng)用
XPU 的目標(biāo)是在性能和效率之間實(shí)現(xiàn)平衡,并處理多樣化的計(jì)算任務(wù)。FPGA 加速器本身很擅長處理某些計(jì)算任務(wù),但隨著許多小內(nèi)核交織在一起,多樣性程度將會上升。
歐陽劍表示:“FPGA 是高效的,可以專注于特定計(jì)算任務(wù),但缺乏可編程能力。傳統(tǒng) CPU 擅長通用計(jì)算任務(wù),尤其是基于規(guī)則的計(jì)算任務(wù),同時(shí)非常靈活。GPU 瞄準(zhǔn)了并行計(jì)算,因此有很強(qiáng)大的性能。XPU 則關(guān)注計(jì)算密集型、基于規(guī)則的多樣化計(jì)算任務(wù),希望提高效率和性能,并帶來類似 CPU 的靈活性。”
目前 XPU 有所欠缺的仍是可編程能力,而這也是涉及 FPGA 時(shí)普遍存在的問題。到目前為止,XPU 尚未提供編譯器。不過歐陽劍表示,該團(tuán)隊(duì)將會很快開發(fā)一款編譯器。
歐陽劍還表示
為了支持矩陣、卷積,以及其他大大小小的內(nèi)核,我們需要一個(gè)配備高帶寬低延時(shí)內(nèi)存,以及高帶寬 I/O 接口的大型數(shù)學(xué)陣列。FPGA 中 XPU 的 DSP 單元提供了并行處理能力,片外 DDR4 和 HBM 接口優(yōu)化了數(shù)據(jù)傳輸,而片上 SRAM 則提供了必要的存儲特性。
在 Micro Benchmark 測試中,對于計(jì)算密集型、常規(guī)內(nèi)存訪問的計(jì)算任務(wù),XPU 的效率與 x86 內(nèi)核類似。對于數(shù)據(jù)同步的計(jì)算任務(wù),XPU 的可擴(kuò)展性應(yīng)當(dāng)可以進(jìn)一步優(yōu)化。而對于沒有數(shù)據(jù)同步的計(jì)算任務(wù),XPU 的可擴(kuò)展性與核心數(shù)量呈線性關(guān)系。
這就是問題所在。如前所述,XPU 仍然沒有配備編譯器。這款處理器在 FPGA 上實(shí)現(xiàn),通過訂制的邏輯電路提供指令。這些小核心類似于 CPU,開發(fā)者只能使用匯編語言,而所有的執(zhí)行都由主機(jī)來控制。整個(gè)流程包括拆分計(jì)算任務(wù),編寫 XPU 代碼,調(diào)用專用的邏輯函數(shù),從而在 Linux 平臺上進(jìn)行編譯和運(yùn)行。
△ XPU 具有 256 個(gè)內(nèi)核,集成了一個(gè)共享內(nèi)存用于數(shù)據(jù)同步。所有內(nèi)核都運(yùn)行在 600MHz。
歐陽劍稱:“在百度,我們使用 FPGA 已有多年時(shí)間。我們的數(shù)據(jù)中心、云計(jì)算平臺和自動駕駛項(xiàng)目中有大量 FPGA。我們非常了解 FPGA 的優(yōu)缺點(diǎn),以及如何優(yōu)化。憑借 XPU 的大型核心,我們專注于多樣化的計(jì)算任務(wù)。”
去年有媒體報(bào)道了基于百度深度學(xué)習(xí) SDA 的 SQL 加速器。當(dāng)時(shí)的數(shù)據(jù)流基于 SA 架構(gòu)。根據(jù)歐陽劍的描述,這也是 XPU 內(nèi)存帶寬和延時(shí)優(yōu)勢的核心。
歐陽劍同時(shí)展示了今年完成的一些 benchmark 測試,但信息非常粗略。不過,這只是百度第一次公開展示 XPU。
如果 XPU 被證明可以用于 AI、數(shù)據(jù)分析、云計(jì)算和無人駕駛,那么百度可能需要用 ASIC 技術(shù)去開發(fā) XPU。
更多最新行業(yè)資訊,歡迎點(diǎn)擊與非網(wǎng)《今日大事要聞》!