FPGA異質架構搭配OpenCL 降低系統整合負荷 智慧應用 影音
蔡司
參數科技

FPGA異質架構搭配OpenCL 降低系統整合負荷

  • 魏淑芳

FPGA在積體電路製造技術持續提升下,已具備極佳的性能、穩定性與可用性,甚至有越來越多大型系統開始導入FPGA整合系統應用。(Xilinx)
FPGA在積體電路製造技術持續提升下,已具備極佳的性能、穩定性與可用性,甚至有越來越多大型系統開始導入FPGA整合系統應用。(Xilinx)

FPGA應用越來越多元,大型系統的設計需求越來越多,以運用FPGA導入資料中心應用設計方向,FPGA具備節能、高效與高度整合優勢,但相對在開發資料中心相關應用系統,就衍生如程式、演算法、介面整合等開發負荷,為加速開發與減輕開發成本,善用開放式開發環境可有效達到目的...

現場可程式化邏輯陣列(Field-programmable gate array;FPGA),在積體電路製造技術持續提升下,已具備極佳的性能、穩定性與可用性,甚至有越來越多大型系統開始導入FPGA整合系統應用,FPGA已漸漸深入核心系統應用方向,加上FPGA本身元件具備高運算效能、低功耗運行、開發架構彈性等多項優點,導入大型系統設計具備極佳效益。

導入FPGA搭配OpenCL開發環境,可減輕開發專用硬體時消耗在編寫FPGA應用程式、基礎底層網通服務、演算法開發可能的研發負荷。Altera

導入FPGA搭配OpenCL開發環境,可減輕開發專用硬體時消耗在編寫FPGA應用程式、基礎底層網通服務、演算法開發可能的研發負荷。Altera

網通設備需求持續增加  大型電信機房耗能高

以大型資料機房、電信服務機房應用,FPGA以往多以基礎高效電信設備整合居多,核心大型系統為考量開發資源、系統整合規劃,較常見採常規開發平台為主,但這類大型電信系統、資料系統應用往往因為使用系統的運算設備耗電較龐大,導致電信服務、資料機房的耗電量過大。

根據自然資源保護委員會(Natural Resources Defense Council)估算,美國資料中心預估2020一年用電量將達到1,400億仟瓦,高度耗能不但造成資源浪費,同時增加資料中心、電信機房維運成本,甚至可能影響了機房服務穩定性。

尤其是電信服務機房、資料中心使用的大型伺服器,會因為應用系統的規劃定位不同,若為了管理便利全採標準化常規架構伺服器,因為伺服器仍須24小時、無間斷運行,資料中心難以針對低負荷運算或服務採用特定的電力節約方案,導致資料中心、電信機房的電力耗用優化執行難度相當高,新的趨勢是將資料中心、電信機房的常規伺服器將關鍵的任務型伺服器改採具硬體加速或應用加速的專用硬體取代,在專用硬體因為無常規系統的硬體與軟體負荷,在效能、成本與節能表現均可優於常規伺服器架構的應用服務成果。

以FPGA架構整合資料中心專用硬體  具節能高效效益

在眾多專用硬體解決方案中,使用FPGA技術方案是在架構前述專用硬體應用具效益的解決方案,由於FPGA元件本身即在運算架構上採高度平行的設計,元件的整體功耗相對更低、系統節能效益顯著,吸引越來越多企業將FPGA導入專用硬體設計開發中,但FPGA要能順利導入終端應用其實難度相當高,因為FPGA為高度客製化的系統,規劃專用硬體設計業者仍須考量系統平台、開發語言、開發時間?人力等問題。

但現實的狀況是FPGA方案應用於資料中心、專用伺服器的相關開發方向,仍有相當多的基礎開發工作需要處理,即使已有底層系統與基礎條件,但在專用硬體需要的功能開發仍須投入對應資源,在週邊開發資源較缺乏的現況,在投入專用硬體開發的時程不僅會因此拉長,會因為開發方向產生更多不可預期的技術門檻需要突破,為系統開發專案增加更多變數。

而選用FPGA的目的在提供更簡潔的硬體架構、更高效的運行環境,若因為開發資源限制反而成為導入FPGA開發負荷增加,新方案的效益因此減損,因此在基於FPGA應用需求導入開放式開發環境不僅可以降低自行架構系統平台的可能技術風險,對於架構對應專用硬體整合需求亦可更專注相關應用服務開發方向,避免過多開發資源投入基礎研發項目,反而拖累專用硬體的開發時效。

FPGA搭配OpenCL架構  減少異質系統整合負荷

在資料中心專用硬體開發方向,導入FPGA搭配開放式計算語言OpenCL(Open Computing Language)開發環境,可減輕開發專用硬體時消耗在編寫FPGA應用程式、基礎底層網通服務、演算法開發可能的研發負荷,同時,以經過時間考驗的OpenCL基礎上進行系統建構可讓專用硬體的可靠性、耐用度符合資料中心的高穩定性軟?硬體要求。

在OpenCL開放開發環境本身即是一個專為異質架構平台建構的程式發展框架,異構環境可由處理器、圖像除理器、數位訊號加速器、或是FPGA等不同硬體條件組合組成的運算架構,採與硬體整合相關的kernels雨用於定義控制平台的API(Application Programming Interface)進行系統組構,基本上已提供了基於資料與任務分割的平行運算架構,OpenCL開放開發環境不僅對多元的硬體架構銜接彈性高,同時以此基礎架構的應用服務還可在平行運算下獲得高效能、低功耗的系統優點。

在導入FPGA與OpenCL開放開發環境前,仍須對OpenCL的由來有更多理解,在發展相關應用或專用硬體才不出現方向錯誤問題。OpenCL發展背景其實在CPU中央處理器效能持續提升、同時週邊的GPU、DSP等關鍵運算元件都有大幅效能升級,在中央處理器核心效能、外頻受限於半導體製程技術瓶頸無法有突破性進展狀況下,半導體業者開始將開發方向朝平行運算與異質元運算架構整合方向開發。

x86與非x86運算平台  均已有Open CL整合資源

即便OpenCL對異質硬體架構的開發環境整合具相當高的吸引力,但實際上中央處理器架構、GPU、DSP的各種運算硬體支援並不容易,以中央處理器、通用處理器市場觀察,通用處理器在應用上即有x86與非x86架構差別,同時亦有相容x86的產品,在x86架構基礎上仍有中央處理器、對應GPU元件開發業者,同時CPU、GPU均有投入的業者,例如Intel本身就有長期投注大量資源開發CPU產品,同時在系統晶片投入GPU或整合GPU的相對應開發需求,在其CPU Core i3、i5、i7等產品即支援OpenCL,在系統晶片於Ivy Bridge系統架構已可讓Intel HD Graphics(GPU)整合支援OpenCL運算架構。

專注GPU的業者如nVidia亦積極向OpenCL架構靠攏,nVidia自行推展的CUDA GPU運算架構,不僅讓開發成果可以銜接以GPU核心加速運算的CUDA GPU(OpenCL SDK)運算架構。在非x86應用環境,就以ARM處理器架構最積極靠攏OpenCL應用,例如ARM搭配對應之Mali GPU,或是搭配Qualcomm Adreno GPU應用,相關硬體已可支援OpenCL架構。

另再從資料中心、電信機房在設備端的應用市場需求觀察,以目前最熱門的雲端運算服務、PaaS/SaaS/IaaS虛擬平台運算需求,其實大量仰賴網通服務與應用服務器整合,例如Amazon AWS服務、Google、Azure等雲端服務平台。

越來越多雲端應用服務會針對其應用核心需求進行規劃專用硬體整合,透過專用硬體達到高效網通服務支援與整合,同時又可以在系統功耗、硬體成本方面獲得最大化的優化效益,例如Google將大量聯網的電腦處理器透過雲端技術連結成一龐大的運算實體,建構其機器學習的類神經網路解決方案,發展如人工智慧或是其他雲端智慧應用服務,若是採用傳統通用型的服務器進行系統架構,不僅無法達到高效網通服務支援,大量服務器設備產生的運行功耗整體運行效益會相對有限。

雲服務需求激增  發展網通專用硬體具節能、高效效益

雲服務應用如網路照片、網路影音、SNS社群服務等平台,會衍生大量的資料儲存需求,以往可能針對儲存需求採常規服務器搭配服務器用硬碟進行系統架構,但對僅提供資料儲放應用卻使用常規處理器與伺服器系統就是顯而易見的資源浪費,反而採用專用設備僅針對資料存儲需求極致優化的資料服務器,對於業者發展需要大量網路存儲空間支援的網通或雲端服務,不僅可紓解大量網路儲存需求,在單位設備採購成本、維護成本、擴充服務容量均具備極佳的彈性,這些都是發展以FPGA搭配Open CL開放環境整合的網通專用設備的市場機會點。

另再從效益面觀察,若是傳統常規網通服務器,其實硬體在聯網的網埠介面至網卡、驅動程式、通訊協定、作業系統至應用程式已經過層層處理,運行過程除介面本身的網通連接速度限制外,在每個資料傳輸點、系統轉換轉遞都會造成資料傳輸延遲,這也是通用服務器最大的問題,大量的運行能源耗損在資料層層處理轉遞過程。

在轉換至採整合FPGA架構與異質硬體整合加速應用環境,可在資料中心服務器的主機卡、線路卡整合FPGA運算與處理單元,其功耗效能比可以超越同等搭載單位中央處理器或是GPU常規服務器20倍以上的效能,若是善用其異質硬體運算核心加速整合優勢,甚至還可改善服務器內部資料傳輸轉遞的延遲問題。

即便導入FPGA搭配Open CL整合專用服務器開發效益弘大,但實際上FPGA用於專用硬體開發的相關資源相對於通用服務器整合更為缺乏,而FPGA若是資組因應一般基礎開發,可能需仰賴熟習、使用RTL(register-transfer level)開發(如VHDL或Verilog)需要更深度的開發專業知識,才能有效發揮FPGA運算平台的性能優勢,這反而成為發展基於FPGA優化專用硬體的開發門檻,為解決這方面的開發資源問題,透過FPGA並導入開放計算語言OpenCL減輕開發負擔,運用Open CL架構異質硬體元件整合CPU、GPU、DSP、FPGA模組,發展適用於資料中心的專用硬體應用平台。

關鍵字