今天我們來談談什麼叫作「邊緣運算」(Edge computing)?
在傳統情況下,我們常將各式各樣的感應器佈在不同應用中並隨時把所有的資料上傳至雲端伺服器做處理。然而,網路的傳輸需要時間,所以在許多被要求低延遲的應用當中,這樣的架構不一定適合,於是就有人開始提出邊緣運算這樣的概念。
邊緣運算最大的概念就是將靠近數據源(感應器)或終端裝置的地方多設置一個新的運算單位,這個運算單位可能是閘道器、路由器或是其他各種硬體(*),這些我們常統稱為Edge端。藉由Edge端的能力,我們可以在收到各種數據的時候馬上做處理並即時回饋給終端裝置,同時,也可以將部份不需要上傳至雲端伺服器的資料提前先過濾掉,減少不必要的網路流量。
然而邊緣運算要能如上述所說的達到效果,有個很重要的條件,那就是Edge端的運算能力要夠強,如果無法做到,Edge端則很有可能成為整個應用的效率瓶頸!
舉個邊緣運算的例子來說吧,假設我們想要寫一個手機APP來做影像辨識,在傳統的方法下,我們很有可能將手機APP拍好的照片馬上傳至雲端GPU伺服器去做辨識,並將結果傳回手機上顯示給使用者。
然而,為了要讓整個流程更有效率並導入邊緣運算的概念,有些廠商可能就會先在手機裡面加入了影像辨識之晶片(*),讓照片能在手機端就能做好辨識,使得使用者能更快的得到辨識結果!
最後補充一點,在許多AI人工智慧應用當中,有愈來愈多廠商在研發如何將架構改為邊緣運算,由於AI的應用往往伴隨著大量的運算資源,所以如何讓Edge端擁有極強的運算能力就顯得非常重要,這也是為什麼很多人工智慧的公司開始大量投入研發AI晶片的原因之一。
總之,邊緣運算這樣的概念在未來是愈來愈重要了,從雲端的計算轉往邊緣端將會是下一波的趨勢阿!
- Edge端可能是擁有CPU、GPU、晶片等元件的運算單元
- 許多手機晶片常常扮演著Edge端的角色,負責加速如影像辨識等不同種類的運算