Detailseite
Projekt Druckansicht

Automatisierte Verifikation und Synthese von Approximationen

Antragstellerin Eva Darulova, Ph.D.
Fachliche Zuordnung Softwaretechnik und Programmiersprachen
Förderung Förderung von 2017 bis 2022
Projektkennung Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 387674182
 
Erstellungsjahr 2021

Zusammenfassung der Projektergebnisse

Ziel des Projektes war die Entwicklung von Programmiertechniken zur automatisierten und fundierten Approximation numerischer Programme. Während numerische Annäherungen ein fester Bestandteil vieler eingebetteter und wissenschaftlicher Computersysteme sind, erfolgt ihre Programmierung heute weitgehend manuell. Das heißt, ein Entwickler muss auswählen, welche Annäherungen anzuwenden sind, und verifizieren, dass die resultierende Genauigkeit für die spezielle Anwendung ausreichend bleibt. Ohne automatisierte Verifizierungs- und Syntheseunterstützung ist dieser Prozess langwierig, fehleranfällig und führt häufig zu einer ineffizienten Nutzung verfügbarer Ressourcen. In diesem Projekt haben wir die Verifikationsfunktionalität des bestehenden Daisy-Frameworks zur Analyse numerischer Programme erweitert, um probabilistische Fehlerspezifikationen zu unterstützen. Solche Spezifikationen sind entscheidend, um eine weitere wichtige Klasse von Approximationen aufgrund von ungenauer Hardware zu unterstützen, die mit einer bestimmten Wahrscheinlichkeit einen größeren Fehler als erwartet erzeugen kann. Als nächstes haben wir uns mit der Skalierbarkeit der bestehenden automatisierten Verifikationstechniken befasst, indem wir eine Kombination aus statischen und dynamischen Analysen vorgeschlagen haben, die es ermöglicht, die soliden statischen Analysetechniken auf numerisch wichtige Teile eines größeren Programms anzuwenden. Hier sind wir etwas vom ursprünglichen Projektplan abgewichen, da die dynamische Analyse nicht innerhalb des Daisy-Frameworks implementiert ist. Wir haben uns dazu aus praktischen Gründen entschieden, um mit bestehenden Programmen, die in C/C++ geschrieben sind, umgehen zu können. Das Projekt hat aber eine Schnittstelle zu Daisy. Derzeit arbeiten wir an der Low-Level-Codegenerierung und Optimierung von Controllern für neuronale Netzwerke, die auf Field-Programmable Gate-Arrays (FPGAs) abzielen.

Projektbezogene Publikationen (Auswahl)

 
 

Zusatzinformationen

Textvergrößerung und Kontrastanpassung