reklama
reklama
reklama
reklama
reklama
reklama
reklama
reklama
© janaka dharmasena dreamstime.com_technical Technologie | 07 marca 2018

Test wydajno艣ci GAP8 i ARM M7 dla wbudowanych splotowych sieci neuronowych (CNN)

W systemach IoT wzrasta popularno艣膰 wykorzystania splotowych sieci neuronowych do analizy danych bezpo艣rednio u 藕r贸d艂a.
Po艂膮czone urz膮dzenia, czyli internet rzeczy (IoT), w ci膮gu ostatnich kilku lat szybko si臋 rozpowszechni艂y i wed艂ug ostatnich prognoz do roku 2035 pojawi si臋 jeszcze trylion takich urz膮dze艅 w r贸偶nych segmentach rynku. Wykorzystywane dzisiaj urz膮dzenia IoT sk艂adaj膮 si臋 zazwyczaj z czujnik贸w zbieraj膮cych dane, takich jak: d藕wi臋k, obraz, temperatura, wilgotno艣膰, lokalizacja GPS i przyspieszenie. Nast臋pnie s膮 one przetwarzane przez narz臋dzia analityczne w chmurze, tak aby umo偶liwi膰 wykorzystanie szerokiego zakresu aplikacji i przesy艂ane do innych w臋z艂贸w lub do chmury.
Projektujesz elektronik臋? Zarezerwuj 4 pa藕dziernika 2018 roku na najwi臋ksz膮 w Polsce konferencj臋 dedykowan膮 projektantom, Evertiq Expo Krak贸w 2018. Przesz艂o 50 producent贸w i dystrybutor贸w komponent贸w do Twojej dyspozycji, ciekawe wyk艂ady i 艣wietna, tw贸rcza atmosfera. Jeste艣 zaproszony, wst臋p wolny: kliknij po szczeg贸艂y. 漏 Evertiq
Wraz ze wzrostem liczby w臋z艂贸w IoT maleje przepustowo艣膰 sieci oraz wzrasta op贸藕nienie w dzia艂aniu aplikacji. Ponadto wykorzystanie chmury sprawia, 偶e wdra偶anie aplikacji IoT w regionach o ograniczonej lub zawodnej 艂膮czno艣ci jest trudne a czasami nawet niemo偶liwe. Jednym z rozwi膮za艅 tego problemu jest przetwarzanie danych na kraw臋dzi, wykonywane bezpo艣rednio w 藕r贸dle danych, to znaczy w w臋藕le brzegowym sieci IoT. Coraz powszechniejsze staje si臋 wykorzystanie w tym celu splotowych sieci neuronowych CNN (Convolutional Neural Network), kt贸re przeprowadzaj膮 analiz臋 danych bezpo艣rednio u 藕r贸d艂a, redukuj膮c tym samym op贸藕nienia a tak偶e oszcz臋dzaj膮c zu偶ycie energii potrzebne do transmisji danych. Firma ARM opublikowa艂a niedawno now膮 bibliotek臋 CMSIS-NN stworzon膮 specjalnie dla takich sieci. CMSIS-NN to zbi贸r wydajnych j膮der (kerneli) sieci neuronowych, opracowanych w celu zwi臋kszenia wydajno艣ci i zminimalizowania zu偶ycia pami臋ci przez sieci neuronowe. W celu oceny wnioskowania CMSIS-NN u偶yto procesor贸w ARM Cortex-M przeznaczonych dla inteligentnych urz膮dze艅 brzegowych IoT. Przeprowadzone testy na rdzeniu ARM Cortex-M7 wykaza艂y 4,6-krotny wzrost wydajno艣ci/przepustowo艣ci i 4,9-krotn膮 popraw臋 efektywno艣ci energetycznej w stosunku do podstawowego kernela. Aby zweryfikowa膰 te dane, firma GreenWaves Technologies przeprowadzi艂a w艂asne testy por贸wnawcze, wykorzystuj膮c, opracowany przez siebie i wprowadzony na rynek na pocz膮tku 2018 roku, procesor GAP8. Procesor oparty jest na architekturze RISC-V i zoptymalizowany pod k膮tem przetwarzania obrazu i d藕wi臋ku, w tym wnioskowania z u偶yciem splotowej sieci neuronowej (CNN). Rysunek 1. Por贸wnanie wielko艣ci procesora GAP8 do jednego eurocenta, 漏 ARM Nowy uk艂ad to wysoce oszcz臋dny w pob贸r energii System-on-a-Chip, umo偶liwiaj膮cy masowe wdra偶anie tanich i inteligentnych urz膮dze艅, kt贸re przechwytuj膮, analizuj膮, klasyfikuj膮 i dzia艂aj膮 na po艂膮czeniu r贸偶nych 藕r贸de艂 danych, takich jak obrazy, d藕wi臋ki lub wibracje. GAP8 艂膮czy w sobie wszystko, co niezb臋dne do obs艂ugi czujnik贸w: wst臋pne przetwarzanie, analiz臋 i wydajn膮 prac臋 na rozbudowanych 藕r贸d艂ach danych. Posiada 8 rdzeni oraz akcelerator HWCE (Hardware Convolution Engine). Dzi臋ki temu GAP8 posiada wysok膮 wydajno艣膰 energetyczn膮, kt贸ra umo偶liwia dzia艂anie urz膮dze艅 IoT na akumulatorach przez wiele lat, zapewniaj膮c tym samym niskie koszty instalacji i eksploatacji. Nowy procesor kieruje si臋 do produkt贸w przemys艂owych i konsumenckich integruj膮cych sztuczn膮 inteligencj臋 i zaawansowane funkcje, takie jak rozpoznawanie obrazu, liczenie ludzi i przedmiot贸w, monitorowanie stanu maszyn, ochrona dom贸w i mieszka艅, rozpoznawanie mowy, robotyka konsumencka, urz膮dzenia do noszenia i inteligentne zabawki. Rysunek 2. Schemat blokowy mikroprocesora GAP8 Testom por贸wnawczym wydajno艣ci obliczeniowej poddano dwa mikrokontrolery GAP8 i STM32 F7 oparty na rdzeniu ARM Cortex-M7. W obu przypadkach wykorzystano ten sam graf sieci neuronowej wyszkolonej w zestawie danych CIFAR-10, sk艂adaj膮cy si臋 z 60 000 kolorowych obraz贸w 32x32 podzielonych na 10 klas. Firma ARM w swoich testach wykorzysta艂a r贸wnie偶 mikrokontroler STM32 F7. Uk艂ad F7 produkowany jest w technologii 90 nm, kt贸ra jest szczeg贸lnie ma艂o energooszcz臋dna, kiedy wykorzystujemy w testach maksymaln膮 pr臋dko艣膰 217 MHz. Dla uzyskania wi臋kszej wiarygodno艣ci rezultat贸w w testach poboru mocy wykorzystano uk艂ad STM32 H7, kt贸ry posiada maksymaln膮 cz臋stotliwo艣膰 taktowania r贸wn膮 400 MHz. Wykorzystuj膮c z tego jedynie 217 MHz zagwarantowano du偶o mniejsze zu偶ycie energii i por贸wnywalno艣膰 wynik贸w. STM32 H7 bazuje na tym samym rdzeniu co ARM M7, co gwarantuje podobny cykl pracy jak w F7. Dodatkowo uk艂ad wytwarzany jest w technologii 40 nm, kt贸ra jest du偶o bardziej bli偶sza technologii 55-nanometrowego procesu TSMC zastosowanego w uk艂adzie GAP8. Tabela 1. Wyniki test贸w por贸wnawczych wydajno艣ci obliczeniowej dla GAP8 i STM32 F7 oraz poboru mocy dla GAP8 i STM32 H7 Analiza test贸w wydajno艣ci W przypadku uk艂adu STM32 F7 pr臋dko艣膰 wnioskowania wynios艂a 99,1 ms przy wykonanych 21 milionach cykli (wszystkie wagi posiada艂y 8-bitow膮 kwantyzacj臋 sygna艂u). Natomiast w specyfikacji producent deklaruje wydajno艣膰 na poziomie 24.7 MOPS. Osi膮gni臋ty rezultat mo偶e 艣wiadczy膰 o tym, 偶e jest jeszcze miejsce na dalsz膮 optymalizacj臋 architektury ARM. GAP8 wymaga jedynie 1,5 miliona cykli do uruchomienia tej samej operacji. Dlaczego GAP8 wykorzystuje tak ma艂o cykli? Po pierwsze, pracuje na 8 rdzeniach, a niezwykle wydajna architektura stworzona do zapewnienia r贸wnoleg艂o艣ci proces贸w, umo偶liwia uzyskanie od 7 do 8-krotnego wsp贸艂czynnika przyspieszenia (speedup). Po drugie, zoptymalizowane instrukcje DSP/SIMD w GAP8 zapewniaj膮 wysok膮 r贸wnoleg艂o艣膰 operacjom splotu. I wreszcie precyzyjna kontrola pami臋ci generuje prawdziw膮 korzy艣膰 w postaci liczby cykli u偶ywanych do 艂adowania i przechowywania wag oraz danych wej艣ciowych i wyj艣ciowych z w臋z艂贸w graf贸w sieci neuronowej. Wszystkie wspomniane czynniki pozwalaj膮 osi膮gn膮膰 ten sam czas wykonania wnioskowania 99,1 ms, jednak dla du偶o mniejszej pr臋dko艣ci zegara 15,4 MHz. To z kolei pozwala na uruchamianie rdzeni ju偶 przy napi臋ciu 1V i redukcj臋 zu偶ycia energii do poziomu 3,7 mW podczas pracy. Uzyskana w te艣cie wydajno艣膰 energetyczna uk艂adu GAP8 jest 16-krotnie lepsza w stosunku do rdzenia M7 zaimplementowanego w STM32 H7. Jest to wi臋c dobry pow贸d do tego, 偶eby dla podobnych obci膮偶e艅 wybra膰 bardziej energooszcz臋dny uk艂ad GAP8. Dla por贸wnania wykonano test dla maksymalnej pr臋dko艣ci zegara w GAP8 - 175 MHz i napi臋cia 1,2V. Uzyskano 11-krotny wzrost wydajno艣ci obliczeniowej w por贸wnaniu do rdzenia M7. Wi臋ksza pr臋dko艣膰 wnioskowania 鈥 8,7 ms 鈥 zosta艂a osi膮gni臋ta kosztem wi臋kszego zu偶ycia energii 鈥 70mW. Zu偶yta energia jest oczywi艣cie mniejsza ni偶 dla M7, poniewa偶 cykl trwa kr贸cej, ale z punktu widzenia zu偶ycia energii uk艂ad GAP8 okaza艂 si臋 mniej wydajny w tym punkcie pracy.
Rysunek 3. Zestaw rozwojowy GAPUINO
W testach nie wykorzystywano dodatkowego akceleratora HWCE. Dzi臋ki temu wykazano jak bardzo efektywny jest GAP8, jako silnik obliczeniowy og贸lnego przeznaczenia. Niew膮tpliwie u偶ycie HWCE zmniejszy艂oby dodatkowo zu偶ycie energii od 2 do 3 razy. Wykonane testy pokaza艂y, 偶e wprowadzone innowacje w architekturze procesora GAP8 i zestawie instrukcji mog膮 przynie艣膰 olbrzymie korzy艣ci dla kolejnych aplikacji brzegowych IoT. Obecnie firma pracuje ju偶 nad nowsz膮 generacj膮 uk艂ad贸w. Nowy chip b臋dzie zawiera艂 szereg ulepsze艅, w tym jeszcze lepsz膮 efektywno艣膰 energetyczn膮, w wyniku zmiany procesu na FD-SOI 28/22 nm. S膮 r贸wnie偶 plany na wprowadzenie zewn臋trznego radia RF do kolejnego uk艂adu, tak aby umo偶liwi膰 艂膮czno艣膰 bezprzewodow膮. Firma przygotowa艂a r贸wnie偶 zestaw rozwojowy GAPUINO, kt贸ry obejmuje p艂ytk臋 z procesorem GAP8, p艂ytk臋 z r贸偶nymi czujnikami, modu艂 kamery QVGA i zestaw GAP8 SDK. Na razie GAPUINO dost臋pne jest w przedsprzeda偶y. Zam贸wienia b臋d膮 realizowane na zasadzie "kto pierwszy, ten lepszy". Wysy艂k臋 do klient贸w zaplanowano na kwiecie艅 bie偶膮cego roku.
reklama
reklama
Za艂aduj wi臋cej news贸w
February 15 2019 09:57 V12.1.1-1