計算機架構與系統實驗室

Computer Architecture and System Laboratory

使用者工具

網站工具


側欄

首頁


教育部專區


研究成果

  • 可供轉移之技術

研究群組

實驗室成員

課程


Caslab專區

group:aionchip

這是本文件的舊版!


AI晶片設計


CASLab GPU: An Edge AI GPU Processor Supporting OpenCL and TensorFlow CNN

近年來人工智慧、機器學習領域快速發展,資料處理量大幅提升,通用型繪圖處理 器(GPGPU)開始被廣泛運用於需要計算大量資料且可高度平行化處理的應用上。談到 GPU 大家總會想到 NVIDIA、AMD、ARM 等大型國外公司,鮮少聽到有國內廠商自行 開發的 GPU , 而 CASLab GPU 則是由國立成功大學電機工程系 Computer Architecture and System Laboratory 的師生自 2013 年起規畫研製,從軟體端到硬體 端完整的系統開發,目標在打造出國內自己的第一顆 SIMT 運算型 GPU。本文介紹 CASLab GPU 軟硬體設計的相關議題。

CASLab GPU 是以 Edge Computing 為目標,並符合 OpenCL/TensorFlow API 規範,建構包含軟體及硬體的整體系統。這包括根據 OpenCL 規範設計 CASLab GPU 的 Runtime,更自行開發了 CASLab GPU 的 OpenCL LLVM Compiler。透過優化的 編譯流程,使軟體堆疊更能配合硬體的運作,獲得大幅整體效能之提升,提供開發人 員便利的開源執行環境。軟體層無論是 OpenCL Runtime、Compiler 都是由C程式 開發,CASLab GPU 無論是搭配 ARM、RISC-V CPU 都能夠在其上運作與進行開 發。 CASLab GPU 透過電子系統層級 (Electronic System-Level, ESL)的 Full System 設計方案,軟體與硬體開發能在早期開發即進行系統驗證。利用 C 與 C++所實作的指 令級模擬器(Instruction Set Simulator, ISS)可驗證指令集的功能正確性並提供時間 模型(Timing Model)來做效能上的初步評估。而 SystemC 等高階硬體描述語言則提 供彈性的硬體設計方法,因為是 Cycle-Accurate 行為,開發者在早期階段就能夠更準 確的達到效能分析,也能作為後續如 Verilog 等暫存器傳遞語言(Register-transfer Language)的實作範本。目前 CASLab GPU 已在 FPGA 層級完成功能性的驗證,接下 來會繼續優化與考慮實際硬體的成本,讓 CASLab GPU 能夠成為一顆高效能的 Edge Computing IP。

CASLab GPU 軟體開發

在設計開發上,CASLab GPU 軟體堆疊情形如 Fig. 1。最上層實作 TensorFlow Runtime 讓使用者在平台上面能使用 TensorFlow API 以支援機器學習、深度學習模 型開發,並透過 OpenCL Runtime 支援 GPU 來達到大量平行運算效能提升,無論是 TensorFlow CNN Application 或是 OpenCL 應用程式都能在 CASLab GPU 上達到加 速效果。GPU 的軟體層級如果沒有編譯器支援的話,是無法完整將整個 GPU 系統平 台建立起來的,因此編譯器在整個軟硬體系統上佔有非常重要的地位。CASLab GPU 開發了自己的 OpenCL LLVM Compiler 以支援 CASLab GPU 硬體。因為是自行開 發,編譯器能夠設計出適合我們 GPU 硬體的執行程式,使硬體與軟體間達到良好的配 合,提升執行效率。最後透過 HSA runtime 提供一共同硬體介面,在軟硬體間搭載一 個橋樑與 Device Driver 做溝通,降低 OpenCL Runtime 的設計複雜度,GPU 收到軟 體端的資訊後便開始運作,最後在將結果傳回 CPU 端的記憶體中,達到程式加速的效 果。


團隊成員

現任成員

畢業校友


研究計畫

執行中的計畫

已結案的計畫

Fig. ##: 績優計畫獎

  • 晶片系統測試平台之設計與自動化 ─
    子計畫(一):適用於SoC測試平台之內嵌式微處理器之設計與測試
    Aug. 01, 2004 ~ Jul. 31, 2007 ( 3 years )
    • 此計畫榮獲國科會整合型計畫『績優計畫獎』


研究成果

  • 研究成果
  • 研究群組
  • 實驗室成員
  • 課程

group/aionchip.1591163619.txt.gz · 上一次變更: 2020/06/03 05:53 由 admin