未來系統(tǒng)(例如云數(shù)據(jù)中心[DC]和自動駕駛汽車)需要在計算能力上大幅改進,以支持不斷增多的工作負載以及不斷演進的底層算法。例如,大數(shù)據(jù)分析、機器學習、視覺處理、基因組以及高級駕駛員輔助系統(tǒng)(ADAS)傳感器融合工作負載都在促使計算性能能以低成本、高效的方式實現(xiàn)提升,并且超出現(xiàn)有系統(tǒng)(例如 x86 系統(tǒng))的極限。
系統(tǒng)架構(gòu)師正在尋找能滿足要求的新計算平臺。該平臺需要足夠靈活,以便集成到現(xiàn)有的架構(gòu)中,并支持各種工作負載及其不斷演進的算法。此外,這些系統(tǒng)很多還必須提供確定性的低時延性能,以支持實時系統(tǒng)(例如自動駕駛汽車)所需的快速響應(yīng)時間。
圖形處理單元(GPU)廠商非常積極地將 GPU 定位成新時代計算平臺的最佳之選,主要依據(jù)其在機器學習訓練的高性能計算 (HPC) 領(lǐng)域取得的成功。在此過程中,GPU 廠商針對機器學習推斷工作負載修改了他們的架構(gòu)。
然而,GPU 廠商還是忽視了基本的 GPU 架構(gòu)的局限性。這些局限性會嚴重影響 GPU 以高效、低成本方式提供必要的系統(tǒng)級計算性能的能力。例如,在云端 DC 系統(tǒng)中,對工作負載的需求在一天內(nèi)會發(fā)生很大變化。此外,這些工作負載的底層算法也會發(fā)生快節(jié)奏變化。GPU 架構(gòu)的局限性會阻止很多今天的工作負載和明天形成的工作負載映射到 GPU,導致硬件閑置或低效。
相反,賽靈思 FPGA 和 SoC 具有眾多關(guān)鍵屬性,使它們非常適合解決未來系統(tǒng)要求所提出的種種挑戰(zhàn)。這些獨特屬性包括:
· 針對所有數(shù)據(jù)類型提供極高的計算能力和效率
· 具備極高靈活性,能夠針對多種工作負載將計算和效率優(yōu)勢最大化
· 具備 I/O 靈活性,能方便地集成到系統(tǒng)中并實現(xiàn)更高效率
· 具備大容量片上存儲器高速緩存,可提高效率并實現(xiàn)最低時延
GPU 起源和目標工作負載
GPU 的起源要追溯到 PC 時代,英偉達 (NVidia) 公司聲稱在 1999 年推出世界首款 GPU,但有很多其他顯卡要先于該公司的出品。GPU 是一款全新設(shè)計的產(chǎn)品,用來分擔/加速圖形處理任務(wù),例如替 CPU 進行像素陣列的陰影和轉(zhuǎn)換處理,其架構(gòu)非常適合高并行吞吐量處理。本質(zhì)上,GPU 的主要作用是為視覺顯示器 (VDU) 渲染高質(zhì)量圖像。
多年來,少量非圖形的大規(guī)模并行和存儲器相關(guān)工作負載是在 GPU(而非 CPU)上實現(xiàn)并且受益良多,例如需要大規(guī)模矩陣計算的醫(yī)療成像應(yīng)用。GPU 廠商意識到他們可以將 GPU 的市場延伸到非圖形應(yīng)用領(lǐng)域,并導致 GPU 的非圖形編程語言(諸如 OpenCL)應(yīng)運而生。這些編程語言實際上是將 GPU 轉(zhuǎn)化成了通用 GPU (GPGPU)。
最近,能夠良好映射到 GPU 實現(xiàn)方案的工作負載之一就是機器學習訓練。通過充分運用 GPU,顯著縮短了深度神經(jīng)網(wǎng)絡(luò)的訓練時間。
GPU 廠商試圖利用機器學習訓練方面的成功來助推其在機器學習推斷上的發(fā)展(部署經(jīng)過訓練的神經(jīng)網(wǎng)絡(luò))。隨著機器學習算法和所需數(shù)據(jù)精度的發(fā)展演進,GPU 廠商一直在調(diào)整他們的
架構(gòu)以保持自身地位優(yōu)勢。例如,英偉達在他們的 Tesla P4 產(chǎn)品中提供 INT8 支持。然而,即使是更低的精度,例如二進制和三進制,今天也正在被很多用戶探索。要利用機器學習及其它領(lǐng)域的進步,GPU 用戶必須等待新硬件推出之后購買新硬件。正如本白皮書后面所述,賽靈思 FPGA 和 SoC 的用戶則無需等待或購買新硬件,因為這類產(chǎn)品本身就具有高度的靈活性。
GPU 廠商想使自身成為這個新計算時代的首選計算平臺,機器學習是他們的基礎(chǔ)。但要弄清楚 GPU 是否適合未來系統(tǒng),還要做更全面的系統(tǒng)級分析,需要考慮 GPU 架構(gòu)的很多局限性以及系統(tǒng)要求如何隨時間發(fā)展演進。