Kommentar zur KI- und ML-Entwicklung Die Zukunft der KI-Chips liegt in der Software

Autor / Redakteur: Fabrice Moizan * / Stephan Augsten

KI und ML, sprich Künstliche Intelligenz und Machine Learning, sind auf Leistung angewiesen. Der Software-Stack ist dabei ebenso wichtig wie die Hardware, denn aus den physikalisch und fertigungstechnisch limitierten Prozessoren kann gute Software auch das letzte bisschen Leistung herauskitzeln.

Firmen zum Thema

Für die Leistungsfähigkeit von Künstlicher Intelligenz und Machine Learning ist eine gute Software unerlässlich.
Für die Leistungsfähigkeit von Künstlicher Intelligenz und Machine Learning ist eine gute Software unerlässlich.
(Bild: chenspec / Pixabay )

In den letzten Jahren hat die Nachfrage an speziellen Prozessoren für die Anwendungsbereiche Künstliche Intelligenz (KI) und Maschinelles Lernen (ML) stark zugenommen. Dies ist angesichts des Potenzials dieser Anwendungsbereiche und der hohen Rechenanforderungen der Anwendungen verständlich.

Jedoch regt die rasche Entwicklung auch zum Nachdenken an, wohin der Weg führen kann. Wie also sehen die besten KI-Chips der Zukunft aus? Ich glaube, der größte Faktor für die Effektivität und den Erfolg eines KI-Chips ist sein Software-Stack.

Eine gute Software vereinfacht nicht nur die Nutzung von KI-Prozessoren für Entwickler, sondern kann auch das volle Potenzial der zugrunde liegenden Hardware ausschöpfen. Maschinelle Intelligenz erfordert mehr von ihrer Software, um effizient zu sein – denn in der künstlichen Intelligenz und beim maschinellen Lernen unterscheiden sich die Berechnungen grundlegend.

Was unterscheidet Berechnungen im Bereich maschinelle Intelligenz?

Es gibt zahlreiche Eigenschaften von KI-Algorithmen, die einzigartig auf ihrem jeweiligen Gebiet sind. Ich will hier einige besonders hervorheben:

  • Bei moderner künstlicher Intelligenz und maschinellem Lernen geht es um den Umgang mit unsicheren Informationen. Die Variablen in einem Modell repräsentieren etwas Ungewisses – eine Wahrscheinlichkeitsverteilung. Dies hat einen großen Einfluss auf die Art der Arbeit, die der Chip leisten muss. Um die große Bandbreite an Möglichkeiten abzudecken, die auftreten können, braucht man die detaillierte Genauigkeit von Bruchzahlen und einen großen dynamischen Bereich an Möglichkeiten. Aus Sicht der Software erfordert dies eine Vielzahl von Fließkommazahl-Techniken und auch Algorithmen, die diese auf wahrscheinlichkeitstheoretische (probabilistische) Weise verarbeiten.
  • Die Daten, mit denen wir uns befassen, sind nicht nur probabilistisch, sondern stammen auch aus einem sehr hochdimensionalen Raum mit Inhalten wie Bildern, Sätzen, Videos oder auch nur abstrakten Wissenskonzepten. Dabei handelt es sich nicht um die geraden Datenvektoren, wie man sie in der Grafikverarbeitung sieht. Je höher die Anzahl der Dimensionen in den Daten wird, desto unregelmäßiger und spärlicher wird der Datenzugriff. Daraus folgt, dass viele der in Hardware und Software üblicherweise verwendeten Techniken wie Puffern, Zwischenspeichern/Cache und Vektorisieren hier nicht anwendbar sind.
  • Hinzu kommt, dass Rechnen mit maschineller Intelligenz sowohl mit Big Data (große Datenmengen für das Training) als auch mit Big Computing (eine große Anzahl von Rechenvorgängen pro verarbeitetem Datenelement) erfolgt, was das Ausmaß des Verarbeitungsaufwands verdeutlicht.

Was bedeutet das für die Software?

Weil das Rechnen mit maschineller Intelligenz so anders ist, muss die Software bei KI und ML härter arbeiten als in vielen anderen Bereichen. Der KI-Software-Stack muss die Produktivität der Entwickler, Benutzerfreundlichkeit und Flexibilität mit der erforderlichen Effizienz in großem Maßstab kombinieren.

Um die Herausforderung der Effizienz zu lösen, muss die KI-Software auf einer niedrigeren Ebene mit der Hardware kommunizieren. Dies verhindert verspätete Entscheidungen während der Hardware-Laufzeit und verbessert die Effizienz. Die probabilistischen und höherwertigen Datenstrukturen in KI-Algorithmen erschweren die Vorhersage, was während der Laufzeit passieren wird. Die Software muss daher mehr Informationen über die Struktur des Algorithmus und die Struktur des ausgeführten Maschinenlernmodells bereitstellen.

Bei der maschinellen Intelligenz muss die Software so programmiert werden, dass sie die Zahlendarstellung und explizite Speicherbewegung steuert, die für bestimmte KI-Algorithmen spezifisch sind, um die Effizienz zu optimieren. Auch die Hardware muss für diese Optimierungen empfänglich sein.

Die Vorteile von Software/Hardware-Co-Design

In Zukunft wird mehr Hardware/Software-Co-Design erforderlich sein, bei dem Software-Algorithmen und KI-Hardware gleichzeitig entwickelt werden. Dies ermöglicht ein größeres Maß an Zusammenarbeit zwischen Hardware und Software und hilft Entwicklern, z.B. Speicherplätze oder Thread-Scheduling effektiv zu organisieren.

Bei Graphcore entwickeln wir unseren Poplar-Software-Stack bereits seit den Anfängen des Unternehmens zusammen mit dem IPU-Prozessor. Um die Prozessoreffizienz zu maximieren, haben wir Poplar mit einer fortschrittlicheren Softwaresteuerung ausgestattet als in anderen Systemen.

Ein Beispiel dafür ist, wie wir den Speicher verwalten. Unsere IPU-Machine M2000 verfügt über einen Off-Chip-DDR-Speicher. Es gibt jedoch keinen Cache und auch keinen Bereich in der Hardware, um zur Laufzeit das Verschieben oder Puffern von Daten zwischen dem externen Streaming-Speicher und dem On-Chip-Prozessor-Speicher automatisch zu steuern. Dies wird alles in Software auf der Grundlage des Rechengraphs gesteuert. Die Speicherverwaltung ist nur einer der Teile des Software-Stacks, in denen wir die Hardware basierend auf fortschrittlichen Analysen optimieren. Dies ist der Schlüssel zu unserem Ansatz.

Wenn Software und Hardware von Anfang an nahtlos zusammenarbeiten lassen sich die Leistungsfähigkeit und Effizienz viel einfacher verbessern. Durch eine aufgestockte Softwaresteuerung können wir Aufschluss darüber geben, wie Hardware verschiedene Maschinenintelligenzmodelle verarbeiten kann. Vielleicht können wir sogar lernen, neue KI-Modelle zu entwickeln, die von Natur aus leistungsfähiger sind und fortschrittliche Techniken wie Sparsity nutzen.

Fabrice Moizan
Fabrice Moizan
(Bild: Graphcore)

In Zukunft werden die besten KI-Chips diejenigen mit der besten Software sein: Wir glauben, dass Graphcore diese Chips bereitstellen wird. Wir sind sowohl ein Software- als auch ein Hardwareunternehmen, und für uns ist es klar, dass dies der Weg in die Zukunft ist.

* Fabrice Moizan ist General Manager & Senior Vice President Sales EMEA bei Graphcore.

Dieser Beitrag erschien zuerst auf unserem Partnerportal Dev-Insider.de.

(ID:47062081)