FPGA-Based DPU—深度學習推理硬體加速的利器 - 靜宜學訊
跳到主要內容區

FPGA-Based DPU—深度學習推理硬體加速的利器

ImgDesc


人工智慧(AI)已經在各個領域的應用中展現出巨大的潛力,例如工業自動化和機器人、智慧醫療保健、智慧城市和交通、智慧金融服務,都有廣泛的應用。機器學習和深度學習是人工智慧的核心技術,用於實現從數據中學習和提取模式的能力。它們被廣泛應用於圖像識別、語音識別、自然語言處理、推薦系統等各種應用場景中。例如,圖像識別技術被用於自動駕駛汽車的環境感知,醫療影像分析等。

深度學習推理硬體加速可以通過多種方式來實現,這些方式通常旨在提高深度學習模型的推理速度和效率。以下是一些常見的深度學習推理硬體加速方案:

  1. 圖形處理單元 (GPU):GPU 是目前最常用的深度學習推理加速硬體之一。由於其平行處理能力強大,適用於大規模矩陣運算,因此非常適合加速深度學習模型的推理過程。
  2. 專用積體電路 (ASIC):ASIC 是專門設計用於深度學習推理任務的定制化晶片。這些晶片通過在硬體級別上優化深度學習模型的運算,可以實現比通用處理器更高的性能和效率。
  3. 現場可程式邏輯閘陣列 (FPGA):FPGA 是一種靈活的硬體加速解決方案,可以通過重新程式設計來適應不同的深度學習模型和任務。雖然相對於GPU和ASIC而言,FPGA的性能可能較低,但其靈活性和可重配置性使其在某些情況下成為一種有吸引力的選擇。
  4. 神經處理器單元 (NPU):NPU 是專門設計用於神經網路推理任務的處理器。與通用處理器相比,NPU 更適合執行深度學習相關的計算任務,因此能夠提供更高的性能和能效比。

這些硬體加速方案中,GPU 因為功耗大,需要搭配散熱裝置。ASIC的開發成本高,開發時程長,對於快速變化的AI應用,較缺乏彈性。NPU因為是定製化,對於多樣化的AI應用也缺乏彈性。相較之下,FPGA具有下列優點:1.靈活性和可定製性,2.快速原型設計和開發,3.低成本,4.可重用性。

FPGA硬體電路設計,大多使用Verilog或VHDL硬體描述語言撰寫電路代碼,再以專用的EDA軟體合成、實現,產生可以燒錄的FPGA晶片的檔案,撰寫電路代碼對不具硬體知識的人士而言,是一項高門檻的工作。

FPGA-based DPU(Deep Learning Processing Unit, 深度學習處理器單元)是專用於卷積神經網路的可程式IP,可以透過參數化設定,燒錄到FPGA晶片,實現深度學習推理運算的硬體加速。DPU內部包含暫存器配置模組、資料控制器模組和卷積計算模組,Xilinx 公司的DPU中部署的卷積神經網路模型包括VGG、ResNet、GoogLeNet、YOLO、SSD、MobileNet、FPN等,也可以自行訓練其他深度學習模型。

透過DPU與Vitis AI整合式開發平台,使得深度學習推理硬體加速的設計複雜度得以明顯簡化。這對專精於人工智慧應用開發的人員,在沒有厚實硬體設計能力的背景下,可以有效降低學習門檻。而對於已熟悉Vitis AI流程的人員,在面對多樣化的人工智慧應用需求,DPU有助於快速實現深度學習推理硬體加速的設計。


文 / 資訊工程學系 林浩仁老師
圖 / 以FPGA晶片實現深度學習推理硬體加速的人工智慧應用示意圖,由 DALL·E 3 提供
出版 / 2024年5月14日

瀏覽數: