Detailseite
Strukturierte Code-Generierung für Deep-Learning Berechnung mittels Multi-Dimensionaler Homomorphismen (MDH.DL)
Antragsteller
Professor Dr. Sergei Gorlatch
Fachliche Zuordnung
Rechnerarchitektur, eingebettete und massiv parallele Systeme
Förderung
Förderung seit 2022
Projektkennung
Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 470527619
Deep Learning (DL) hat die Welt revolutioniert, z.B. konnte das AlexNet DL-Netzwerk bestehende Methoden zur Bildklassifizierung deutlich übertreffen. Für die Praktikabilität von DL ist die Software, die DL implementiert, maßgeblich: die Software muss eine hohe performance für DL-Berechnungen erzielen, und die Software muss über verschiedene Hardware-Architekturen portabel sein, von mobilen Geräten bis hin zu Hochleistungs-Rechenclustern. Zusätzlich, um DL-Software für den gewöhnlichen DL-Wissenschaftler produktiv zu machen (welcher in der Regel nicht mit Hardware-Details und Low-Level-Code-Optimierungen vertraut ist), müssen für diesen einfach zu verwendende Programmierabstraktionen für die Implementierung von DL-Programmen zur Verfügung gestellt werden die unabhängig von Hardware- und Optimierungsdetails sind. Zusätzlich, um den komplexen und zunehmenden Anforderungen an DL gerecht zu werden, muss DL-Software leicht an neue Anforderungen anpassbar sein, da die Komplexität der DL-Algorithmen ständig zunimmt und sich die Landschaft der Computersysteme stetig verändert. In unserem DFG-Vorgängerprojekt PPP-DL haben wir den algebraischen Formalismus der Multi-Dimensionalen Homomorphismen (MDH) erarbeitet -- eine formale Darstellung für DL-Berechnungen wie Matrixmultiplikation und Convolutions. Wir haben gezeigt, dass MDH eine signifikant höhere Performance, Portabilität und/oder Produktivität für DL-Berechnungen auf GPUs und CPUs erzielt, im Vergleich zu prominenten DL-Ansätzen, einschließlich handoptimierter Herstellerbibliotheken von NVIDIA und Intel die in der Forschungs- und Anwendungslandschaft als Goldstandards gelten. Dieser Fortsetzungsantrag zielt darauf ab, einen neuartigen Codegenerierungsansatz für DL zu entwerfen und zu implementieren, der auf dem in unserem Vorgängerprojekt PPP-DL entworfenem Formalismus der MDH basiert. Das ultimative Ziel unseres geplanten Codegenerierungsansatzes ist es, gleichzeitig hohe Performance, Portabilität und Produktivität für DL zu erreichen: 1. Performance: durch Optimierung ganzer DL-Programme (die aus mehreren DL-Berechnungen bestehen, wie z.B. Matrixmultiplikation und Convolution); dafür wollen wir unseren MDH-Formalismus als Grundlage verwenden, weil er es erlaubt, DL-Berechnungen einheitlich im selben Formalismus auszudrücken und folglich Optimierungen über die Berechnungen hinweg auszudrücken. 2. Portabilität: durch die Ausarbeitung eines verallgemeinerten Ansatzes zur Unterstützung von DL-spezifischer Hardware (wie NVIDIAs populäre Tensor Cores); hierfür wollen wir die algebraischen Informationen nutzen, die in unserer MDH-Darstellung für DL-Berechnungen erfasst sind, um zu prüfen, ob DL-spezifische Hardware (legal) verwendet werden kann. 3. Produktivität: durch Nutzung der MDH-Sprache für DL, die unabhängig von Optimierungsdetails ist; insbesondere planen wir die Ausdrucksfähigkeit von MDH erheblich zu erweitern, z.B. um ganze DL-Programme auszudrücken (anstatt nur einzelnen DL-Berechnungen)
DFG-Verfahren
Sachbeihilfen
Internationaler Bezug
Dänemark, Frankreich, Großbritannien, USA
Kooperationspartnerinnen / Kooperationspartner
Professor Albert Cohen, Ph.D.; Professor Tobias Grosser, Ph.D.; Vinod Grover, Ph.D.; Professorin Dr. Mary Hall, Ph.D.; Professor Dr. Cosmin Oancea, Ph.D.
Mitverantwortlich
Professor Dr. Michel Steuwer
