異質架構與AI正加速雲端邊緣運算的發展

【作者: 盧傑瑞】
雖然邊緣計算有無數種定義,但今天的邊緣運算大多是指透過這項技術,將運算、儲存和網路等功能的子集(subset)工作,被分散到位於網絡中最遠端的一層或多層邊緣節點。今天的邊緣節點通常利用同質運算基礎,也就是所有處理都在同一類型的CPU上運行。
CISC/RISC處理器是迄今為止最主要的解決方案,較小的邊緣節點只需要使用單核心CPU就有足夠的處理能力,通常使用X86或ARM架構。而更大的邊緣節點則採用多核處理器的方案,內建2個~32個不等的X86、ARM或RISC-V內核,或者包括多個相同類型的CPU處理器。
雲端數據中心的多處理單元異質架構
在雲端平台方面的計算資源,是由傳統的複雜指令集計算/精簡指令集計算 (CISC/RISC) 伺服器所組成,或許也有部分平台還包括了,圖形處理單元 (GPU) 加速器、張量處理單元 (TPU)、場域可程式閘陣列( FPGA)和其他一些處理器,來幫助加速部分的工作。
雖然這樣的雲端平台方面有強大的運算能力,但隨著邊緣節點的增加,大量的運算需求,開始大量消耗著雲端平台的資源,導致整體效率大幅滑落。
因此異質運算的概念就被提出,並且正被實現中。異質運算是一種將不同數據路徑架構下的不同類型處理器,以優化特定計算工作負載的執行技術。所以,在決定如何在雲端數據中心,和邊緣運算節點之間劃分工作負載時,需要考慮許多權衡,來對每一層設計中面為不同應用程序時,進行優化的處理器數據路徑架構就變得相重要。
在這樣的架構下,雲端數據中心可以將許多工作負擔,分散到邊緣節點的異質運算架構中。包括用於多種處理器類型的模組,包括 CISC/RISC CPU、GPU、TPU 和 FPGA等。而運算工作負載不僅可以分散在邊緣和雲之間進行,更可以在兩個相異級別的異質處理資源之間分區進行。
例如圖二中節的點F2和F3,可以並行地處理從F1傳送的數據。而F4則是可以獨立地處理來自F2和F3的數據,或者處於等待狀態,直到來自兩個節點的數據出現,這取決於所需的行為。
同時許多流程節點可以並行執行,其中也會一些不能,因為它們的功能無執行緒安全,尤其是對於神經網絡節點,情況更是如此。
在軟體方面,則有多種平台可以選擇,例如Microsoft的Azure Edge、Amazon的Greengrass、VMware Edge,以及 Eclipse、EdgeX Foundry和Linux等。透過這些軟體來管理邊緣節點中CISC/RISC的基礎架構、配置、安全性、編排、管理等。
加速器與CPU協同使用 提高系統效能
隨著人工智慧/機器學習開始佔據優先地位,新出現的各種應用陸續對處理單元提出了獨特的服務需求,包括了可以執行乘積累加運算(Multiply Accumulate, MAC)、極高並行化和大量數據存取等運算任務等。
因此,這樣的背景下,期望能滿足效率提高且不增加功耗,又可以支援人工智慧/機器學習下,最好的方法就是建立一個全新的運算架構,而這個架構可以由多個協同工作的專用運算模組所組成。每個模組都能高速的執行單一任務,並且在低功耗下,呈現出的是更高的效能和更低的整體功耗。
異質系統是可以提供更高效率的運算能力,就如上述,需要跨主機CPU和加速器來分配工作。因此就需要一些方法來對參數的分析與AI的規劃,在機器學習模型最佳化後,讓系統達到接近最優秀的配置。
從歷史上看,運算處理是一項通用任務,利用CPU可以順利地執行許多不同的任務,但以今天的觀點來看,這並不太聰明,因為一次只能執行單一任務。
直到圖形化使用者介面(GUI)的出現,使得操作和運算處理變得越來越複雜,因此GPU就被開發出來作為個專門的、高度並行運算的處理器。
加速器通常會與CPU協同使用,來提高整體系統的效能。例如,前500強的超級電腦名單裡,功能最強大的5台電腦中,就有3台是採用GPU作為加速器的異質電腦(圖三)。因此可以透過不同的架構特性和大量的系統參數配置(例如執行緒數、執行緒親和性、主機多核處理器與加速設備之間的工作負載劃分),設計出最佳的工作負載分配,來實現最優異質系統的性能和耗電效率。
不過必須注意的是,能夠產生最高吞吐量的最佳系統配置未必是最省電的。此外,最佳系統配置也有可能需要因應不同類型的應用運算、輸入問題大小和可用資源而進行調整改變。
異質節點的效益衡量標準
在優化經濟效率方面,工業物聯網聯盟CTO助理Charles Byers曾經提出2個計算方法:一些吞吐量/一些成本來作為衡量標準(Some throughput measure/Some cost measure)。
隨著更開放的軟體和硬體生態系統,硬體的成本將會持續降低,而使得更龐大終端客戶採用多邊緣運算。每一美元所購買的系統能擁有更多吞吐量下,是優化邊緣系統總生命週期的一種重要成本方法。因此一美元購買的吞吐量,在很大程度上取決於系統架構、處理器的能力、基礎設施的效率,以及被要求的軟體平台和演算法。
邊緣節點運轉所需的電力是一個極其重要的考量部分,無論電力是由電池供電,還是直接從電纜供電,耗電率通常是佔營運成本的最大比例。另一方面,進入處理器的電能幾乎完全轉化為熱量,而這些散熱設施,也會是建置和運營成本的重點之一。因此,電源和散熱是相當大程度決定了邊緣運算單元的吞吐量。<待續>
【欲閱讀更豐富的內容,請參閱CTIMES雜誌 2022 年第 366 期5 月號】
贊助廣告
商品推薦
udn討論區
- 張貼文章或下標籤,不得有違法或侵害他人權益之言論,違者應自負法律責任。
- 對於明知不實或過度情緒謾罵之言論,經網友檢舉或本網站發現,聯合新聞網有權逕予刪除文章、停權或解除會員資格。不同意上述規範者,請勿張貼文章。
- 對於無意義、與本文無關、明知不實、謾罵之標籤,聯合新聞網有權逕予刪除標籤、停權或解除會員資格。不同意上述規範者,請勿下標籤。
- 凡「暱稱」涉及謾罵、髒話穢言、侵害他人權利,聯合新聞網有權逕予刪除發言文章、停權或解除會員資格。不同意上述規範者,請勿張貼文章。
FB留言