HW/SW Co-Design für eingebettete KI
Kontext
KI spielt eine entscheidende Rolle für alle Arten von modernen Rechenalgorithmen. Aufgrund der rechenintensiven Natur der Arbeitslast werden oft spezielle Beschleuniger eingesetzt, um eine schnelle und energieeffiziente Ausführung zu ermöglichen. In ähnlicher Weise spielt der Software-Stack eine entscheidende Rolle. Er muss ein Gleichgewicht zwischen Benutzerfreundlichkeit und erreichbarer Leistung herstellen.
Aufgaben
Ihre Aufgabe ist es, einen KI-Beschleuniger weiterzuentwickeln. Grundlegende Operationen, wie z.B. einfache Schichtberechnungen funktionieren bereits. Aber weitere Optimierungen und neue Netzwerktypen wie z.B. Transformatoren, sind noch notwendig, um eine ausreichende Leistung zu erzielen. Ihre Aufgabe wird es daher sein, neue Funktionalitäten und eine geeignete Softwareschnittstelle für diese mitzuentwickeln. Optional können diese auch in eine Compiler-Toolchain implementiert werden.
Voraussetzungen
- Kenntnisse in Scala/Chisel sind von Vorteil, aber nicht notwendig
- Kenntnisse in Python und C für die Softwareentwicklung
- Interesse an der Erforschung von KI in eingebetteten Bereichen