Rechnen mit Licht Ein SDK für photonische KI-Beschleuniger vorgestellt

Von Dipl.-Ing. (FH) Hendrik Härter 6 min Lesedauer

Anbieter zum Thema

Q.ANT veröffentlicht ein Open-Source-SDK für seine photonischen Beschleunigersysteme. Entwickler können damit Anwendungen in C und Python schreiben, Workloads auf Standard-CPUs emulieren und bestehende KI-Modelle für die Native Processing Units des Unternehmens anpassen. Die Emulation ermöglicht eine funktionale Entwicklung, bevor der Code auf die reale Hardware trifft.

Photonik-SDK für C und Python: Jetzt werden Rechenoperationen als normale mathematische Funktionen abstrahiert.(Bild:  Q.ANT)
Photonik-SDK für C und Python: Jetzt werden Rechenoperationen als normale mathematische Funktionen abstrahiert.
(Bild: Q.ANT)

Photonisches Computing soll für Softwareentwickler zugänglicher werden. Q.ANT stellt dazu ein Open-Source-Software-Development-Kit (SDK) für seine photonischen Beschleunigersysteme bereit. Die Werkzeuge umfassen Schnittstellen für C und Python, Beispiele, Dokumentation sowie ein Backend für die Ausführung auf Standard-CPUs. Entwickler sollen damit photonische Anwendungen auf dem eigenen Rechner entwickeln, testen und für die Ausführung auf realer Hardware vorbereiten können.

„Die Rechenoperationen werden so weit abstrahiert, dass sie als normale mathematische Funktionen verwendet werden können“, erklärt Utz Bacher, Vice President Software bei Q.ANT. Entwickler könnten Python deshalb wie gewohnt in ihrer bevorzugten Programmierumgebung einsetzen und mit vertrauten Datentypen und Bibliotheken arbeiten. Kenntnisse in der Photonik seien für den Einstieg nicht erforderlich. Der Entwickler könne sich damit ganz auf die Entwicklung und Anwendung beispielsweise von KI-Modellen konzentrieren.

Das SDK stellt nach Angaben von Q.ANT eine Software-Schnittstelle zu den photonischen Beschleunigersystemen des Unternehmens bereit. Zu den vorgesehenen Anwendungen gehören unter anderem neuronale Netze, Bildverarbeitung und die direkte Ausführung zentraler mathematischer Operationen auf der photonischen Hardware.

Datenbewegung als energetischer Flaschenhals

Q-ANT über photonisches Computing: „Wir wollen intelligentere und kleinere Modelle verwenden“, sagt Urs Bacher, Vice President Software bei Q-Ant.(Bild:  Q.ANT)
Q-ANT über photonisches Computing: „Wir wollen intelligentere und kleinere Modelle verwenden“, sagt Urs Bacher, Vice President Software bei Q-Ant.
(Bild: Q.ANT)

Q.ANT adressiert mit seinem Ansatz vor allem den Energiebedarf heutiger KI-Systeme. Bei Rechenzentrumsanwendungen entfalle ein großer Teil der Leistungsaufnahme nicht auf die eigentlichen Rechenoperationen, sondern auf die Bewegung der Daten. Bacher beziffert diesen Anteil auf bis zu 95 Prozent der verfügbaren Energie. Die Daten würden unter anderem zwischen verschiedenen Serverknoten sowie zwischen Hauptspeicher, CPU-Kernen, Caches, Registern, GPUs und GPU-Speichern übertragen.

„Auf die eigentlichen Rechenoperationen entfallen nur etwa fünf Prozent der Leistungsaufnahme“, sagt Bacher. Die Zahlen beziehen sich nach seiner Darstellung auf KI-Aufgaben in Rechenzentren. Eine Bewertung muss dabei die jeweils betrachtete Systemarchitektur, die Auslastung und die Einbeziehung von Speicher- und Schnittstellenkomponenten berücksichtigen.

Q.ANT will den Energiebedarf nicht nur dadurch reduzieren, dass einzelne Rechenoperationen optisch ausgeführt werden. Das Unternehmen verfolgt auch einen Ansatz mit kompakteren und ausdrucksstärkeren KI-Modellen. In der Photonik könnten nichtlineare Funktionen wie Kosinusfunktionen, Fourier-Transformationen und komplexere dynamische Systeme direkt in der Optik abgebildet werden. Möglich sei dies mithilfe oszillierender Elemente. Solche Operationen seien in klassischen CMOS-Systemen aufwendig und damit energieintensiv, erklärt Bacher. Würden mathematische Funktionen direkt auf photonischen Chips ausgeführt, könnten sie effizienter in KI-Modelle eingebunden werden. Nach Darstellung von Q.ANT lassen sich dadurch Modelle mit deutlich weniger Parametern entwickeln, die gleichwertige Ergebnisse erzielen. Weniger Parameter bedeuten zugleich weniger Datenbewegungen.

„Wir wollen also intelligentere und kleinere Modelle verwenden, anstatt die Systeme immer größer und energiehungriger zu skalieren“, sagt Bacher.

Rechnen mit Phasenverschiebungen

Die photonischen Beschleuniger von Q.ANT basieren auf photonisch integrierten Schaltkreisen aus Lithiumniobat. Das Material ermöglicht es, die Phase von Laserlicht über elektrische Spannungen zu beeinflussen. Dazu werden im photonischen Chip Spannungen an Modulatoren angelegt. Das elektrische Feld verändert den optischen Brechungsindex des Lithiumniobats und damit die Phasenlage des Lichts. Dieser Zusammenhang beruht auf dem Pockels-Effekt. Die Phasenverschiebung erfolgt laut Bacher sehr schnell und mit geringem Energiebedarf, weil dazu lediglich ein elektrisches Feld erforderlich ist. Die Informationen werden dabei über die Phase des Laserlichts codiert.

Die Schnittstelle zur digitalen Welt bleibt jedoch elektrisch. Für die Umwandlung digitaler Daten in analoge Spannungen benötigen die D/A-Wandler Energie. Nach der optischen Verarbeitung werden die Signale über Photodetektoren erfasst und anschließend mit A/D-Wandlern wieder in digitale Daten überführt. „Die eigentliche Berechnung verbraucht jedoch äußerst wenig Energie“, sagt Bacher. Der Energiebedarf des Gesamtsystems hängt damit nicht nur vom photonischen Rechenkern ab, sondern auch von den Wandlern und den übrigen Datenpfaden.

Durch die Kombination mehrerer optischer Elemente könnten aufwendige Berechnungen in einem einzigen Durchgang ausgeführt werden. Darin sieht Q.ANT einen wesentlichen Vorteil gegenüber einer Architektur, in der entsprechende Funktionen schrittweise über viele elektronische Rechenoperationen angenähert werden.

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung

Mach-Zehnder-Interferometer bilden Operationen ab

Als Beispiel für die Umsetzung nennt Bacher die Multiplikation mit zwei Mach-Zehnder-Interferometern (MZI). In einem MZI wird das Laserlicht zunächst auf zwei optische Arme aufgeteilt. Durch angelegte Spannungen lassen sich die Lichtsignale in den beiden Armen modulieren. Werden die Teilstrahlen anschließend wieder zusammengeführt, erzeugt ihre Interferenz ein Ausgangssignal, das die codierte Information enthält. Durch die Kopplung zweier MZIs lässt sich nach Angaben von Q.ANT eine native optische Multiplikation realisieren. Das Ergebnis kann anschließend über einen Photodetektor wieder in ein digitales Signal umgewandelt werden.

Die optische Übertragungscharakteristik kann außerdem für nichtlineare Operationen genutzt werden. Wird ein anderer Betriebspunkt gewählt, kann das erste MZI beispielsweise eine Kosinusfunktion abbilden. Das zweite MZI übernimmt anschließend die Multiplikation mit einem Gewichtungsfaktor. Der limitierende Faktor liege dabei an der Schnittstelle zwischen digitaler und analoger Welt. Die D/A- und A/D-Wandler bestimmten maßgeblich Auflösung, Rauschen und Geschwindigkeit. Der optische Chip selbst biete eine hohe Auflösung und Geschwindigkeit und sei daher nicht das begrenzende Element, sagt Bacher.

Die Mach-Zehnder-Interferometer seien allerdings nur ein Beispiel für optische Rechenelemente. Q.ANT arbeite bereits an weiteren Elementen, mit denen sich zusätzliche nichtlineare Funktionen realisieren lassen.

CPU-Emulation für funktionale Tests

Mit dem SDK schreiben Entwickler vertrauten Python- oder C-Code. Die Software übersetzt mathematische Funktionsaufrufe im Hintergrund in Anweisungen für die photonische Hardware oder das Emulations-Backend.(Bild:  Q.ANT)
Mit dem SDK schreiben Entwickler vertrauten Python- oder C-Code. Die Software übersetzt mathematische Funktionsaufrufe im Hintergrund in Anweisungen für die photonische Hardware oder das Emulations-Backend.
(Bild: Q.ANT)

Das SDK bietet neben dem Zugriff auf reale Hardware auch eine Emulation der Q.ANT-Beschleuniger auf der CPU. Entwickler können damit Algorithmen, Abläufe und Integrationen testen. Nach Angaben von Bacher eignet sich dieses Vorgehen auch für komplexere Algorithmen. Als Beispiel nennt er ein Diffusionsmodell auf Basis eines Convolutional Neural Networks, das den Stil von Eingabebildern verändert (Style Transfer). Die Emulation konzentriert sich dabei auf eine funktionale Abbildung der mathematischen Operationen. Physikalische Störeffekte der realen Hardware, wie etwa das Rauschen der D/A- und A/D-Wandler, werden in diesem Stadium bewusst noch nicht modelliert.

Bei linearen Operationen wie Matrixmultiplikationen seien die Unterschiede zwischen der funktionalen Emulation und der realen Hardware kaum wahrnehmbar. Bei nichtlinearen Operationen und insbesondere bei komplexen Modellen könnten dagegen geringfügige Ungenauigkeiten auftreten. „Nach unseren Erfahrungen kommen KI-Modelle mit unserer Hardware sehr gut zurecht und sind ausreichend präzise“, betont Bacher. Die Emulation soll damit vor allem die Entwicklung von Workloads, die Überprüfung von Algorithmen und die Anpassung bestehender Software erleichtern. Der Umstieg auf die photonische Hardware sei in der Regel unkompliziert.

Vortrainierte Modelle lassen sich portieren

Für die Nutzung bestehender KI-Modelle sei kein erneutes Training zwingend erforderlich, erklärt Bacher. Die im SDK enthaltenen Beispiele zeigen, wie sich vortrainierte Modelle auf die Q.ANT-Hardware anpassen lassen. Dazu gehören eine Handschriftenerkennung, die Klassifizierung von Bildern sowie die Segmentierung von Gehirnscan-Bilddaten in gutartige und möglicherweise bösartige Gewebebereiche. Darüber hinaus enthält das SDK einen Lernalgorithmus, der den Einsatz von Nichtlinearitäten demonstrieren soll. Im Vergleich zu klassischen neuronalen Netzen soll sich damit eine bessere Trainingsqualität mit weniger Parametern erzielen lassen.

Das SDK orientiert sich an NumPy und PyTorch. Dadurch will Q.ANT die Einstiegshürde für eine größere Entwicklergemeinschaft senken. Die Beispiele zeigen, wie sich bestehende Workflows, beispielsweise etwa auf Basis von PyTorch, mit vergleichsweise geringem Aufwand an das SDK anpassen lassen. Eine direkte PyTorch-Integration ist nach Angaben von Q.ANT intern bereits verfügbar, gehört aber noch nicht zum veröffentlichten SDK. Eine Compiler-Toolchain für PyTorch und weitere Frameworks befindet sich in Entwicklung. Derzeit müssen Entwickler deshalb noch nachvollziehen, welche Modelloperationen auf die verfügbaren photonischen Funktionen abgebildet werden können und welche Teile des Workloads auf klassischen Prozessoren ausgeführt werden.

Skalierung über mehrere optische Elemente

Für künftige Systeme plant Q.ANT, mehrere optische Elemente direkt hintereinanderzuschalten. Dieser Ansatz soll leistungsfähige Berechnungen in einem einzigen Durchlauf ermöglichen. Die optischen Bauteile könnten auf einem einzelnen photonischen integrierten Schaltkreis (Photonic Integrated Circuit, PIC) integriert werden. Ebenso sei es möglich, die Funktionen künftig auf mehrere optische Chips zu verteilen. Das SDK bildet dafür die Softwarebasis, auf der Entwickler eigene Frameworks und höherwertige Werkzeuge aufbauen können. Q.ANT will in den kommenden Monaten zusätzlich den Zugang zu seinen photonischen Beschleunigern öffnen. Vorgesehen sind ein Cloud-Zugang in Zusammenarbeit mit IONOS sowie On-Premise-Installationen des Native Processing Servers.

Damit verschiebt sich der Schwerpunkt der weiteren Entwicklung von der reinen Softwarebereitstellung auf die Frage, wie sich photonische Hardware in bestehende Rechenumgebungen integrieren lässt. Für Entwickler werden dabei insbesondere die verfügbaren Operationen, die Qualität der Modellportierung, die Eigenschaften der Datenwandler und der Vergleich zwischen der funktionalen Emulation und der realen Hardware entscheidend sein. (heh)

(ID:50956660)