Künstliche Intelligenz Welche Hardware eignet sich zur KI-Beschleunigung?

Sebastian Gerstl Sebastian Gerstl |

Anbieter zum Thema

Moderne Hardwarebeschleuniger haben den praktikablen Einsatz von Künstlicher Intelligenz in IT und Industrie in greifbare Nähe gerückt. Doch welche Technologie eignet sich hierfür besser: GPUs, DSPs, programmierbare FPGAs oder eigene, dedizierte Prozessoren?

Künstliche Intelligenz hat sich in rasender Geschwindigkeit vom Science-Fiction-Stilmittel zur praktischen Anwendbarkeit entwickelt. Schnellere Bandbreiten sowie leistungsfähigere Cloud-Anbindungen und Rechenzentrenmachen es möglich. Doch welche Ansprüche stellt KI an Hardware und welche Technologien werden diesen am besten gerecht?
Künstliche Intelligenz hat sich in rasender Geschwindigkeit vom Science-Fiction-Stilmittel zur praktischen Anwendbarkeit entwickelt. Schnellere Bandbreiten sowie leistungsfähigere Cloud-Anbindungen und Rechenzentrenmachen es möglich. Doch welche Ansprüche stellt KI an Hardware und welche Technologien werden diesen am besten gerecht?
(Bild: © vchalup - stock.adobe.com)

Künstliche Intelligenz und maschinelles Lernen – diese Themen existieren nicht erst seit heute. An Hochschulen wird das Thema bereits seit den 1950er-Jahren behandelt. Doch erst in den vergangenen Jahren haben Demonstrationen wie der selbstlernende AlphaGo-Computer oder ausgiebige Tests zum Autonomen Fahren dafür gesorgt, dass KI inzwischen ein greifbares Thema ist, dass auch bereits praktische Anwendung im Alltag findet. Vor allem die Geschwindigkeit und das Ausmaß, mit dem sogenannte neuronale Netzwerke trainiert werden können, haben in den vergangenen Jahren rapide zugenommen.

Moderne, dediziert auf KIs ausgerichtete Hardware-Beschleuniger, haben eine praktische Anwendbarkeit künstlicher Intelligenz in Echtzeit heute möglich gemacht. Dabei sind die technologischen Ansätze für eine solche dedizierte KI-Beschleunigung extrem unterschiedlich. So hat beispielsweise Prozessorhersteller Intel KI zu einem wichtigen Trendthema ausgerufen, dass auf verschiedenen technologischen Wegen verfolgt wird: Einerseits wird maschinelles Lernen auf Basis von FPGAs vorangetrieben, andererseits offeriert das Unternehmen mit Nervana eigene dedizierte, auf neuronale Netzwerke ausgelegte Prozessoren. Speziell im letzteren Umfeld konkurriert der Chip-Gigant mit, fördert aber auch zahlreiche Start-up-Unternehmen, die eigene Chip-Lösungen zur KI-Beschleunigung bieten.

Bildergalerie
Bildergalerie mit 6 Bildern

Der ideale „neurale“ Prozessor: CPU, GPU oder FPGA? Oder doch ein dedizierter ASIC?

„Grundsätzlich ist es falsch zu fragen: Was ist besser für Künstliche Intelligenz – GPU, ASIC oder FPGA?“, sagt Doug Burger, Distinguished Engineer, MSR NExT und Mitglied von Microsofts „Project Brainwave“-Team. „Denn diese Technologien sind alle nur Mittel zum Zweck, um eine geeignete Architektur für ein Neuronales Netzwerk umzusetzen. Die Frage, die noch nicht beantwortet ist, lautet: Was ist die am besten geeignete Architektur? Hierüber ist man sich noch uneins.“

Grafikkarten von NVIDIA hatten in den vergangenen Jahren vor allem in akademischen Kreisen zunehmend Anwendung zum Trainieren von selbstlernenden Algorithmen gefunden. Denn die massiv parallelen Architekturen von GPUs und ihre explizite Eigenschaft für hohe Datendurchsätze eigenen sich nicht nur zur Grafikberechnung, sondern auch zur KI-Beschleunigung. Daher bietet der GPU-Hersteller inzwischen eigene, dedizierte auf die Anwendung von KI ausgelegte Plattformen wie Jetson, deren Herzstück die Graphics Processing Unit liefern.

Aber nicht nur GPUs verfügen über gute Eigenschaften für hohes, paralleles Data Streaming. Es ist genau diese Eigenschaft, die auch FPGAs für den Einsatz in der Telekommunikation oder als Co-Prozessoren in Datenzentren attraktiv macht. Auch DSPs, Digitale Signal-Prozessoren, kommen aus ganz ähnlichen Gründen für die zusätzliche Hardware-Beschleunigung in Betracht, um KI in Echtzeit anwendbar zu machen. Und Google, dass erst kürzlich seine Tensor Processing Unit (TPU) 3.0 vorgestellt hat, setzt in seinem Chip auf eine Reihe anwendungsspezifischer integrierter Schaltkreise (ASIC), die die nötige Beschleunigung zum KI-Training liefern.

Bei all diesen unterschiedlichen Ansätzen wird es allerdings schwierig, den Überblick zu behalten und die bereits vorhandenen technologischen Ansätze effizient zu vergleichen. Worauf kommt es bei der Hardware-Beschleunigung für künstliche Intelligenz konkret an? Was sind die individuellen Stärken der jeweiligen technologischen Ansätze, wenn es um dieses Anwendungsfeld geht? In welchen Bereichen können diese Vorzüge am besten ausgespielt werden? Zu diesem Zweck haben wir diverse Entwickler und Lösungsanbieter zu diesem Thema befragt. Geantwortet haben unter anderen Cadence, Intel, Lattice, Microsoft, NVIDIA und einige andere Firmen. Im Wochenverlauf wollen wir einzelne der Befragte, die uns ausführlich Auskunft gegeben haben, im Detail zu Wort kommen lassen. (Lesen Sie hier das Interview mit Axel Köhler, Deep Learning Solution Architect bei NVIDIA).

Hyperskalige Rechenzentren ermöglichen KI für Jedermann

Enorme Rechenleistung ist ohnehin einer der Hauptgründe, warum KI aktuell einen Boom durchläuft und die Anwendbarkeit praktikabel macht. Cloud-Computing, schnelle Internet-Verbindungen und der aus diesen Aspekten resultierende, leichte Zugang zu leistungsstarken Rechenzentren machen Supercomputer bzw. HPCs (High Performance Computing) nun gewissermaßen für Jedermann zugänglich. Es ist in erster Linie an dieser Stelle, wo ein Großteil der modernen, für KI angelegten Hardware ansetzt.

Ein großer Durchbruch für die moderne Wahrnehmung von Künstlicher Intelligenz in praktischen Anwendungen kam im Juni 2012 im Rahmen des Google-Brain-Projekts: KI-Forscher von Google und Professor Andre Ng von der Stanford University hatten einen KI-Cluster trainiert, der in der Lage war, selbsttätig Katzen in YouTube-Videos zu erkennen und von Menschen zu unterscheiden. Für das Training der Künstlichen Intelligenz war dazu noch ein Cluster aus 2000 CPUs notwendig, die in einem Rechenzentrum von Google arbeiteten. Kurze Zeit später tat sich NVIDIA mit Ng zusammen, um das Experiment auf Basis von GPUs zu wiederholen. Das Ergebnis: 12 GPUs reichten für das KI-Training aus, um dasselbe Ergebnis zu erzielen, für das zuvor 2.000 CPUs notwendig waren.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Big Data, Analytics & AI

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.

Aufklappen für Details zu Ihrer Einwilligung

Deep Learning ist eine KI-Technik, die maschinelles Lernen durch Training neuronaler Netze mit großen Datenmengen zur Problemlösung ermöglicht“, sagt Deep Learning Solution Architect Axel Köhler von NVIDIA. „Wie die 3D-Grafik ist auch das Tiefenlernen ein paralleles Rechenproblem, d. h., es müssen große Datenmengen gleichzeitig verarbeitet werden. Die Vielkern-Architektur des Grafikprozessors passt ideal für diese Art von Aufgaben.“

GPUs (Graphics Processing Units) wurden ursprünglich dazu konzipiert, um die Art und Weise, wie verschiedene 3D-Grafik-Engines ihren Code ausführen, gut abzubilden – Dinge wie Geometrie-Setup und -Ausführung, Textur-Mapping, Speicherzugriff und Shader. Um dies möglichst effizient zu bewerkstelligen – und vor allem um die zentrale CPU eines Rechners zu entlasten – sind GPUs mit zahlreichen speziellen Prozessorkernen ausgestattet, um diese Aufgaben mit hoher Parallelität möglichst schnell durchführen zu können. NVIDIA bezeichnet einzelne Recheneinheiten innerhalb der GPU entsprechend als „Streaming Multiprocessor“ oder SM – je mehr SMs eine GPU hat, um so mehr parallele Aufgaben im Datendurchsatz kann der Baustein bewältigen. Dieser Aufbau, und speziell diese enorme Parallelität – kommt auch beim Training von KI-Algorithmen zu Gute.

Hohe Parallelität, großen Datendurchsatz und geringe Latenz versprechen auch FPGA-Bausteine. Die Logikbausteine werden häufig in Rechenzentren zur Unterstützung der CPUs eingesetzt, wo sie sich für schnelle Datenschnittstellen oder zur Datenvorverarbeitung sehr gut eignen, um die eingesetzten CPUs zu entlasten. „Bei einem breiten Feld von KI-Anwendungen im Rechenzentrum (darunter Reasoning Systeme, Machine Learning, Training und Inferenzen beim Deep Learning) werden Rechensysteme mit Intel-Xeon-Prozessoren verwendet“, sagt Stephan Gillich, Director of Artificial Intelligence and Computing bei Intel Deutschland. „Vorteil ist, dass damit auch die klassische Datenanalyse auf diesen Systemen stattfindet. Bei Bedarf können die Xeon-basierten Plattformen mit Intels FPGAs (Field-Programmable-Gate-Arrays) beschleunigt werden, etwa für Echtzeitanalysen.“

FPGAs können, was die Unterstützung maschinellen Lernens im Rechenzentrum betrifft, allerdings auch mehr als das. Da ist zuerst einmal die Flexibilität, die FPGAs zu einfach rekonfigurierbarer Hardware macht. Die Algorithmen können sich also ändern. Eine FPGA-Implementierung lässt sich programmieren, um größte systemische Leistung zu erzielen – und stellt diese in einer sehr deterministischen Weise zur Verfügung – im Gegensatz zu einem CPU-basierten Ansatz, der Interrupts unterliegt. Dies erlaubt einen flexiblen Einsatz, der viele maschinelle Lernalgorithmen möglich macht – mit hochverteilten Logikressourcen, umfangreichen Interconnect-Schemata und umfangreichem verteilten lokalen Speicher.

Kernaspekte eines hyperskaligen Hochleistungsrechners

Eignen sich FPGAs durch ihre Flexibilität damit automatisch besser? NVIDIAs Axel Köhler hält dagegen: „Um die Herausforderung zu meistern, Deep Learning auf breiter Ebene umzusetzen, muss die Technologie insgesamt sieben Herausforderungen bewältigen: Programmierbarkeit, Latenz, Genauigkeit, Größe, (Daten-)Durchsatz, Energieeffizienz und Lernrate. Um diese Herausforderungen zu meistern, ist mehr als nur das Hinzufügen eines ASICs oder eines FPGAs zu einem Rechenzentrum erforderlich. Hyperscale-Rechenzentren sind die kompliziertesten Computer, die je gebaut wurden.“

Zudem gelten FPGAs – insbesondere High-End-FPGAs, wie sie im Datenzentrum angewendet werden, als wenig zugänglich für Entwickler, als kompliziert und schwierig zu programmieren. Köhler verweist hingegen auf die zahlreichen positiven Erfahrungen, die vor allem Hochschulen in der KI-Forschung auf Basis von GPUs erreicht haben – und die Verfügbarkeit von zahlreichen daraus resultierenden Frameworks, die die Entwicklung und das Training von KI-Algorithmen auf mit Hilfe von GPUs einfacher machen – in der Theorie jedenfalls.

Ein anderer Weg ist, auf dedizierte Prozessoren zu setzen, die ganz speziell auf die Anforderungen von Neuronalen Netzwerken zugeschnitten sind. Intel hat hierfür beispielsweise den Neural Network Prozessor (NNP) Nervana im Sortiment – eine Technologie, die zusammen mit dem gleichnamigen Tech-Start-up 2016 aufgekauft und ins Portfolio einverleibt wurde. „KI-Lösungen müssen zunehmend skalierbar und schnell sein, dabei immer größere Datenmodelle beherbergen“, sagt Stephan Gillich. „Die Architektur des Intel NNP wurde speziell für Deep Learning Training entwickelt und zeichnet sich durch hohe Flexibilität und Skalierbarkeit sowie einen schnellen und leistungsfähigen Speicher aus. Große Datenmengen können direkt auf dem Chip gespeichert und in kürzester Zeit abgerufen werden.“

Einen echten Leistungsvergleich der bestehenden unterschiedlichen Plattformen gibt es zwar aktuell – noch – nicht. Im August möchten Google, Baidu und die Universitäten Harvard und Stanford allerdings zu diesem Zweck die Machine-Learning-Benchmark MLPerf veröffentlichen.

(ID:45339020)