Übersicht: Deploying and Optimizing Deep Neural Networks on Embedded Hardware / FPGAs

Programming Adaptive Embedded Systems

Mit dem Aufstieg des Internet der Dinge (IoT) und Maschinellen Lernens stellen wir fest, dass die Leistungsanforderungen an eingebettete und batteriebetriebne Geräte stetig steigt. Um dem gerecht zu werden benötigt es neue Hardware- und Softwarekonzepte, die gleichzeitig hochgradig energieeffizient und trotzdem leistungsstark sind. Da sich jedoch Anforderungen an das System mit der Zeit verändern können, sollte ein Gerät in die Lage versetzt werden, Hardwarebeschleuniger je nach Anforderung auszutauschen, um immer optimal auf die aktuelle Situation reagieren zu können.

Ein Beispiel für eine solche Hardwarekomponente sind Field Programmable Gate Arrays (FPGA). Diese zeichnen sich dadurch aus, dass sie verschiedene hochspezialisierte Hardwarebeschleuniger instanziiern können und zwischen diesen, je nach Anwendungsanforderung, wechseln können. Die Verwendung in FPGAs ist in eingebetteten Szenarien noch experimentell. Die größte Schwierigkeit liegt in der deutlich komplexeren Applikationsentwicklung für FPGAs.

Um dies zu vereinfachen haben wir die Elastic Node Plattform entwickelt, bestehend aus der Hardware Plattform und der Software Suite.

Ansprechpartner: Dr.-Ing. Andreas ErbslöhChao Qian, M.Sc., David Peter Federl, M.Sc.

Mehr lesen

Hybride Plattformen mit KI-Hardwarebeschleunigung

Ein Teil unserer Forschung besteht folglich darin, diese Spezialhardware in Form von KI-Hardwarebeschleunigern zu entwerfen und zu implementieren. Dafür kommen bei uns flexible FPGAs zum Einsatz, mit denen sich beliebige KI-Modelle günstig und effizient als Hardware umsetzen lassen.

Die hybride Hardwareplattform Elastic Node, welche Teil des Elastic-AI-Ökosystems ist, stellt hierbei gleichzeitig Frucht und Werkzeug unserer Forschung dar und soll vor allem Ansprüchen an Nutzbarkeit, Anpassungsfähigkeit sowie Überwachbarkeit gerecht werden und dabei effizient sein.

Darum untersuchen wir für diesen Bereich auch adäquate hardwarenahe Optimierungsmöglichkeiten. Denn durch genaue Kenntnis der Hardware lassen sich in vielen Bereichen Ansätze finden, mit denen man die verfügbaren Ressourcen voll ausschöpfen kann. So gibt es beispielsweise Einsparungspotenzial durch Umsetzung einzelner Modellschichten mit quantisierten Aktivierungsfunktionen mittels LUTs, oder durch Modellschichten, die nicht die volle Taktrate benötigen, Parallelisierung in der ALU und viele andere Ansätze.

Ansprechpartner: Chao Qian, M.Sc.