Projekttitel: Entwicklung skalierbarer, rekonfigurierbarer Rechensysteme: Rahmenkonzepte, Architekturen und Laufzeitmanagement
Projektdauer: 08/22 – heute
Forschungsbereich: Verantwortungsvolle KI
In einer sich rasch wandelnden digitalen Landschaft mit komplexen Algorithmen wie dem maschinellen Lernen ist es notwendig, neue Strategien zu verfolgen, die Flexibilität und Anpassungsfähigkeit verbessern. Vielversprechende Lösungen umfassen Laufzeitskalierbarkeit und Anpassungsfähigkeit für stromsparende und hocheffiziente Hardware. Durch die Kombination der Laufzeitrekonfiguration von FPGAs mit der effizienten Kommunikation von Networks-on-Chip (NoC) lässt sich eine hochskalierbare, leistungsstarke und energieeffiziente Rechenarchitektur realisieren. Allerdings wird die Entwicklung effizienter Architekturen und die Programmierung immer anspruchsvoller. Daher benötigen Entwickler ein umfassendes Framework, das effiziente Automatisierung, gute Benutzerfreundlichkeit, angemessene Abstraktion und die nahtlose Integration verschiedener Werkzeuge und Bibliotheken bietet.
Das Projekt soll einen einfachen Einstieg für Anwender ermöglichen und den Aufwand für das Erlernen neuer Konzepte, Programmiersprachen und Werkzeuge reduzieren. Ziel ist es, Anwendern die Entwicklung neuer Anwendungen zu ermöglichen, ohne dass sie sich mit den zugrunde liegenden Details auseinandersetzen müssen. Effiziente Algorithmen sind notwendig, um Anwendungen auf heterogenen Architekturen mit maximaler Leistung auszuführen. Die Anwendungen müssen auf der Grundlage verschiedener Ziele, wie beispielsweise Leistung oder Ressourcenauslastung, optimierbar sein. Darüber hinaus zielt das Projekt darauf ab, alle notwendigen Schritte zu integrieren, um FPGAs für Nutzer zugänglicher zu machen, die möglicherweise nicht über umfassende Hardware-Kenntnisse verfügen.
Unser Ziel ist es, die verschiedenen Phasen bei der Entwicklung eines zur Laufzeit skalierbaren und rekonfigurierbaren FPGA-basierten Systems für zukünftige hochgradig adaptive Anwendungen (wie Computer Vision und maschinelles Lernen) zu untersuchen, wobei wir uns auf folgende Bereiche konzentrieren:
Der Bereich hochgradig anpassungsfähiger Anwendungen wie Computer Vision (CV) und maschinelles Lernen (ML) wird immer komplexer und vielfältiger. Feldprogrammierbare Gate-Arrays (FPGAs) haben bewiesen, dass sie den steigenden Anforderungen an Leistung und Energieeffizienz gerecht werden können. Ihre Programmierbarkeit stellt jedoch nach wie vor eine große Herausforderung für Softwareentwickler dar. Anwender sehen sich häufig mit unterschiedlichen oder neuen Sprachen, Architekturen und Werkzeugen konfrontiert und verfügen nicht über fundierte Kenntnisse der zugrunde liegenden FPGA-Hardware. Darüber hinaus mangelt es oft an Schnittstellen zwischen Anbietern, festgelegten Standards oder einer modellbasierten Modularisierung, um all diese Elemente miteinander zu verknüpfen.
Wir haben ein Framework entwickelt, das aus OpenVX-Anwendungen eine laufzeitadaptive Bildverarbeitungsarchitektur generiert, die sowohl leistungsstark als auch flexibel ist. Diese Architektur ist für Anwendungen mit hohen Datenraten und geringem Synchronisationsaufwand ausgelegt. Darüber hinaus haben wir eine skalierbare und laufzeitadaptive Architektur implementiert, die die Anzahl der Beschleuniger zur Laufzeit dynamisch an die aktuellen Anforderungen der Anwendung anpasst. Weitere Informationen und vorläufige Ergebnisse finden Sie in unseren Veröffentlichungen.
Die von uns eingesetzte Technologie gliedert sich in drei Bereiche. Erstens nutzen wir für das Framework zur automatischen Generierung von Architekturen modellbasierte Ansätze und unterteilen die Phasen in Frontend, Middleware und Backend. Zweitens setzen wir die Dynamic Function eXchange (DFX)-Technologie von AMD Xilinx ein, um die Architektur anpassungsfähig zu gestalten. Die als Beschleuniger eingesetzten IPs basieren auf HiFlipVX. Die Skalierbarkeit wird durch den Einsatz eines „Network-on-Chip“-Kommunikationssubsystems erreicht. Drittens nutzen wir für die Workflow- und Backend-Automatisierung Ansätze auf Basis von Skriptsprachen. Zum Testen und Validieren unserer Arbeit setzen wir verschiedene FPGAs von AMD Xilinx ein.
Die Forschungsarbeit soll den Einsatz von FPGAs im Bereich der Bildverarbeitung mit Schwerpunkt auf konvolutionellen neuronalen Netzen fördern. Sie soll Softwareentwicklern den Einsatz von FPGAs und den damit verbundenen Systemen erleichtern. Außerdem soll sie dazu beitragen, dass auch mit nur begrenzten Hardwarekenntnissen Hardwarearchitekturen entwickelt werden können. In Zukunft möchten wir uns eingehender mit verschiedenen Standards und der Integration in andere Frameworks befassen sowie weitere Anwendungsbereiche untersuchen, in denen der Einsatz von auf neuronalen Netzen basierenden Architekturen in Betracht kommt.
Prof. Dr. Diana Göhringer
Sie müssen den Inhalt von reCAPTCHA laden, um das Formular abzuschicken. Bitte beachten Sie, dass dabei Daten mit Drittanbietern ausgetauscht werden.
Mehr InformationenSie sehen gerade einen Platzhalterinhalt von Turnstile. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr InformationenSie sehen gerade einen Platzhalterinhalt von Facebook. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr InformationenSie sehen gerade einen Platzhalterinhalt von Instagram. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr InformationenSie sehen gerade einen Platzhalterinhalt von X. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr Informationen