D&E: Ist die hardware-nahe Implementierung, also die low-level Optimierung von KI-Code, ein Thema in Systemfunktion oder -performanz?
FS: Embedded-Code ist üblicherweise hoch-optimiert, um dadurch möglichst viel Funktionalität mit der gegebenen Hardware umsetzen zu können.
Es gibt erste Ansätze bei Mikrocontrollern, die bestimmte KI-Beschleuniger Funktionalitäten beinhalten. Dies sind im Wesentlichen spezialisierte Operationen eines Befehlssatzes zur Unterstützung von SIMD-Operationen oder dem Zusammenfassen in diesem Bereich häufig verwendeter Kombinationen mathematischer Operationen, wie Multiply-Accumulate.
Im Wesentlichen dient die low-level-Optimierung von KI-Code zwei Zielen: zum einen dazu, größere und umfangreichere Verfahren und Netze lauffähig zu gestalten und zum anderen zur Latenzverringerung in Echtzeitanwendungen.
Um die Entwicklung und Implementierung in Zukunft effizient zu gestalten, ist es aus unserer Sicht notwendig, effiziente Bibliotheken für Mikrocontroller mit optimierten KI-Methoden aufzubauen. Wir bei Knowtion arbeiten zurzeit an einer Bibliothek, die geeignete Algorithmen für verschiedene Anwendungen im Mikrocontroller-Umfeld beinhaltet.
Dies ist nur ein erster Schritt, als langfristig hilfreicher erachten wir allerdings die Weiterentwicklung von KI-Verfahren, hin zu weniger Speicherverbrauch beispielsweise durch Streaming-Ansätze und deren hardware-nahe Implementierung erst im Anschluss.
D&E: Wie wahrscheinlich zieht eine Modifikation des Algorithmus
auf low- oder high-level eine Veränderung der Hardware nach sich?
FS: Pauschal ist dies sehr schwer zu beantworten. Dies hängt in erster Linie davon ab, wie stark sich die Modifikation des Algorithmus auf den Ressourcenbedarf, in Bezug auf Speicher- und Rechenleistung, auswirkt.
Sollte diese nicht ausreichen, besteht immer noch die Möglichkeit, entsprechende Teile der Berechnung auf höhere Ebenen – wie Edge-Computer oder Gateways – auszulagern. Dadurch könnte eine aufwändige Veränderung der Hardware zu einem späteren Zeitpunkt vermieden werden. Hier spielen natürlich auch immer wirtschaftliche und andere technische Faktoren eine große Rolle.
Prinzipiell versuchen wir bei Knowtion die Möglichkeiten der uns gegebenen Hardware vollständig auszureizen. Insbesondere im Bereich KI denken wir, dass noch viel Optimierungspotential besteht. Auf der einen Seite durch klassische Code-Optimierung, auf der anderen Seite durch bessere KI-Verfahren.