Przetwarzanie brzegowe
Jak działa
Dane są przetwarzane na urządzeniu końcowym lub na pobliskim węźle brzegowym (serwer, brama, cloudlet), najczęściej w architekturze trójwarstwowej: urządzenie — brzeg — chmura. Na brzegu wykonywane jest tyle obliczeń, ile pozwalają lokalne zasoby (filtrowanie, agregacja, inferencja modeli), a do chmury trafiają już przetworzone dane lub zadania wymagające większej mocy. Dzięki temu skraca się czas odpowiedzi i redukuje ilość przesyłanych danych. W zastosowaniach AI model jest kompresowany (kwantyzacja, destylacja) tak, by zmieścił się w ograniczonych zasobach urządzenia brzegowego i działał z akceptowalną latencją.
Rozwiązany problem
Scentralizowana chmura wprowadza latencję, zużywa pasmo sieciowe i wymaga przesyłania wrażliwych danych do zdalnego centrum danych. Przy lawinowym wzroście liczby urządzeń IoT i czujników przesyłanie wszystkich surowych danych do chmury jest nieopłacalne i zbyt wolne dla aplikacji czasu rzeczywistego.
Komponenty
Urządzenie końcowe (czujnik, kamera, robot, telefon) generujące dane i często wykonujące lokalne obliczenia.
Serwer, brama lub cloudlet w pobliżu urządzeń, przejmujący część obliczeń i agregacji danych.
Scentralizowane centrum danych obsługujące zadania przekraczające możliwości brzegu oraz trening modeli.
Mechanizmy decydujące, które zadania wykonać na urządzeniu, na brzegu, a które w chmurze; zarządzanie aktualizacjami modeli.
Implementacja
Modele AI trzeba kompresować (kwantyzacja, destylacja), by zmieściły się w pamięci i budżecie energetycznym brzegu.
Dane wędrują między wieloma węzłami, co wymaga szyfrowania niezależnego od chmury i zdecentralizowanego modelu zaufania.
Zarządzanie wdrożeniami i aktualizacjami modeli na tysiącach heterogenicznych urządzeń jest trudne operacyjnie.
Ewolucja
Pierwsze systemy przybliżające treści do użytkowników (np. Akamai) — korzeń idei przetwarzania na brzegu.
M. Satyanarayanan i in. (Carnegie Mellon) wprowadzają cloudlet — małe centrum danych na brzegu dla aplikacji mobilnych.
Cisco popularyzuje pojęcie fog computing jako rozszerzenia chmury na brzeg dla IoT.
ETSI powołuje grupę Mobile Edge Computing; Karim Arabi popularyzuje termin „edge computing" w keynote na IEEE DAC 2014.
Pierwszy moduł Jetson z wbudowanym GPU umożliwia inferencję AI on-device, kluczową dla robotyki.
Praca Shi i in. (IEEE IoT Journal) staje się fundamentem akademickiego ujęcia edge computingu.
ETSI zmienia nazwę standardu z Mobile na Multi-access Edge Computing, rozszerzając go poza sieci komórkowe.
Wąskie gardło obliczeniowe
Urządzenia brzegowe mają ograniczoną moc obliczeniową, pamięć i budżet energetyczny, co limituje rozmiar i złożoność uruchamianych modeli.
Równoległość
Obciążenie jest rozpraszane pomiędzy wiele urządzeń i węzłów brzegowych działających niezależnie.
Wymagania sprzętowe
Edge computing jest paradygmatem wdrożenia niezależnym od konkretnej architektury sprzętowej.
Wbudowane GPU (np. NVIDIA Jetson) przyspieszają inferencję AI na brzegu.
Akceleratory klasy Edge TPU są projektowane pod energooszczędną inferencję na brzegu.
Układy neuromorficzne oferują bardzo niski pobór mocy, atrakcyjny dla urządzeń brzegowych.