Verloren im Labyrinth der IT-Begriffe? Hier finden Sie Definitionen und Basiswissen zu Rechenzentrums-IT und -Infrastruktur.

Grafikprozessoren für Hochleistungscomputer Was ist eine Graphics Processing Unit - GPU?

Autor / Redakteur: Janine El-Saghir* / Ulrike Ostler

Die GPU oder Graphics Processing Unit ist der Grafikprozessor eines Rechners. Mit einer modernen GPGPU (General Purpose Graphics Processing Unit) lässt sich die Rechenleistung von Computern in immensem Umfang steigern - systemabhängig bis zum Superrechner.

Anbieter zum Thema

Eine Graphics Processing Unit (GPU) dient in Servern und Hochleistungsrechnern als Beschleuniger, Akzelerator, beziehungsweie Co-Prozessor für die CPU.
Eine Graphics Processing Unit (GPU) dient in Servern und Hochleistungsrechnern als Beschleuniger, Akzelerator, beziehungsweie Co-Prozessor für die CPU.
(Bild: © djarma/ Fotolia.com)

Das Kürzel GPU steht für den englischen Begriff Graphics Processing Unit - also für den Grafikprozessor eines Rechners. Durchschnittliche Verwender kennen GPUs von diversen Endgeräten - Desktop Computern, Smartphones oder Tablets. Moderne Multicore-Prozessoren integrieren die GPU zusammen mit der CPU (Central Processing Unit) - dem Hauptprozessor des Computers - auf einer gemeinsamen Platine - alternativ befindet sich der Grafikprozessor auf dem Motherboard des Rechners oder - teilweise auch in mehrfacher Ausführung - auf einer separaten Grafikkarte. Ihre Aufgabe in einem PC oder mobilen Endgeräten besteht darin, die Grafik eigenständig zu berechnen, somit den Hauptprozessor zu entlasten und die Rechenleistung des Gerätes zu optimieren.

Die Vorläufer heutiger GPUs kamen zu Beginn der 1980er Jahre auf den Markt, seinerzeit dienten sie lediglich als Bindeglied zwischen der CPU und der Ausgabe von Bildschirminhalten. Mit der zunehmenden Verbreitung grafischer Bildschirmoberflächen - im Massenmarkt für Endanwender also maßgeblich mit der Durchsetzung von Microsoft Windows - wurden die Grafikprozessoren mit eigenständigen Rechenkapazitäten ausgestattet. Die Bezeichnung GPU wurde insbesondere durch Nvidia - einen der weltweit größten Hersteller dieser Prozessoren - eingeführt, der damit die Vermarktung seiner „GeForce-256“-Grafikarte unterstützte.

GPU-Computing - Technologie für Hochleistungscomputer

Mit der Anwendung in Computern und Mobilgeräten sind die Einsatzmöglichkeiten einer modernen GPU allerdings noch längst nicht ausgeschöpft. Durch GPU-Computing lässt sich durch Parallelisierung der Tasks die Rechenleistung professioneller Rechner in immensem Umfang steigern.

Der Rechnerarchitektur von Hochleistungscomputern liegt in der Regel die Integration eines entsprechenden Grafikprozessors zugrunde. Auch bei einem solchen Rechner sorgt die Grafikeinheit für die Entlastung der CPU und damit für Beschleunigung und maximale Leistung, indem sie rechenintensive Teile von Software-Anwendungen übernimmt.

Nvidia war auch bei der Entwicklung dieser Technologien federführend. Im Jahr 2007 führte das Unternehmen beschleunigende Grafikprozessoren ein. Verwendung finden sie beispielsweise für komplexe digitale Analysen und Konstruktionsberechnungen, für kryptografische Verfahren oder in Robotern und Drohnen. Die Hochleistungs-GPUs sind auch eine wesentliche Voraussetzung dafür, um die Entwicklung künstlicher digitaler Intelligenz oder Deep-Learning-Prozesse nicht nur in der Theorie, sondern auch in der Praxis voranzutreiben.

GPUs - zu permanentem Multitasking fähig

Die Möglichkeit der Beschleunigung von digitalen Rechenprozeduren durch die Grafikeinheit ergibt sich - im Vergleich zur CPU - aus dem prinzipiellen Aufbau der beiden Prozessoren. Eine CPU besteht aus wenigen Recheneinheiten (Cores), deren Funktion für die serielle Verarbeitung von Daten optimiert sind, die aufeinanderfolgend/linear auf den Prozessor treffen. Demgegenüber enthält die GPU eine Vielzahl - in der Praxis mehrere Tausend - kleine, effiziente Recheneinheiten, die in der Lage sind, ein permanentes Multitasking auszuführen.

GPGPUs - maximale Rechenleistung durch Universalität

Voraussetzung dafür, dass eine GPU als Hochleistungs-Prozessor agieren kann, ist die Fähigkeit, nicht spezialisierte Berechnungen auszuführen, die normalerweise durch den Hauptprozessor übernommen werden. Eine klassische GPU ist für das Rendern der Grafik zuständig, im Gesamtsystem übernimmt sie keine weiteren Funktionen. Beschleunigung und eine signifikante Erhöhung der Rechenleistung bewirken die Prozessoren dann, wenn sie als GPGPU (General Purpose Graphics Processing Unit) konzipiert sind.

Parallelisierung als Anforderung für Systeme und Code

GPGPUs führen Aufgaben aus, die früher besonders leistungsstarken CPUs vorbehalten waren. Die Grundlage hierfür bilden neben der universellen Einsatzmöglichkeit ihre Parallelisierungsfähigkeiten. Parallelisierungen - Berechnungen und Problemlösungen durch verschiedene Rechenkerne - sind eine Voraussetzung dafür, dass High-Performance-Computing respektive GPU-Computing funktionieren kann. Unterschieden werden in diesem Kontext:

  • Shared Memory-Parallelisierung: Die vorhandenen CPUs beziehungsweise CPU-Kerne werden in der Regel bereits durch einen einzelnen Systemprozess beschäftigt, über entsprechende Schnittstellen werden weitere Aufgaben an die GPGPU ausgelagert.
  • Distributed Memory-Parallelisierung: Die Rechenkerne, die für die Ausführung eines Prozesses aktiv sind, stehen in einem permanenten Informationsaustausch (message passing) untereinander.

In der Praxis werden die beiden Parallelisierungstechniken häufig miteinander kombiniert, um alle Rechenkerne eines Hochleistungscomputers auszulasten.

Im Gegenzug eignet sich GPU-Computing nicht dafür, übliche Anwendungsprogramme auszuführen, da diesen die Universalität für diese Operationen fehlt. Ein Algorithmus, der auf die Fähigkeiten des Grafikprozessors zugeschnitten ist, aber eher seriell und nicht mit Parallelitätsoptionen arbeitet, wäre nicht in der Lage, die GPU des Rechners auszulasten.

Aufgrund des vergleichsweise kleinen Caches von GPUs respektive GPGPUs würde er stattdessen Latenzen in der Programmausführung nach sich ziehen, die nicht durch Multitasking ausgeglichen werden können. GPU-Computing auf einem Hochleistungsrechner erfordert daher entsprechend schnellen Code, für dessen Entwicklung meist auf die Compiler der Supercomputer-Hersteller (Cray, Intel) zurückgegriffen wird.

Aktuelle Superrechner basieren auf GPU-Computing

Supercomputer sind die jeweils schnellsten Rechner ihrer Zeit. Sie sind essentiell für anspruchsvolle Berechnungen in Forschung und Entwicklung. Auf welcher Bauweise und Rechnerarchitektur ein solches Gerät respektive System beruht, ist unerheblich - Universalität ist die einzige Voraussetzung, die es erfüllen muss.

hre Entwicklung hat sich seit den 1960er Jahren von den wissenschaftlichen Rechnern sowie den Großrechnern abgespalten. Ihr wichtigstes Kriterium war (und ist) maximale Rechenleistung. Über Jahrzehnte war der US-amerikanische Hersteller Cray der weltweit einzige Produzent der Superrechner. Mit der Entwicklung der GPGPUs begann für diese Geräteklasse eine neue Ära - die Hochleistungs-Grafikprozessoren werden auch ihre weitere Entwicklung maßgeblich prägen.

Orientierung in der Welt der Superrechner bietet seit 1993 die zwei Mal jährlich aktualisierte Liste der Top-500-Rechner. Neben dem Vergleich ihrer Systeme im Hinblick auf Hersteller, Rechenleistung, Betriebssystem, diverse Hardware-Kennzahlen sowie der nationalen/geografischen Verteilung ermöglicht sie auch eine Analyse der historischen Entwicklung dieser Rechner.

Absehbar ist, dass GPU-Computing auch für ihre nächsten Generationen eine zentrale Rolle spielen wird. Die neuen Quantensysteme - beispielsweise „D-Wave“ - sind demgegenüber zwar eine sehr spannende neue Technologie, benötigen bis zur Markteinführung jedoch noch Entwicklungszeit. Als Betriebssystem haben sich in der Sparte der Superrechner derzeit diverse unter Linux betriebene Systeme durchgesetzt.

Seit 2007 ist auch Energie-Effizienz ein Bewertungskriterium für die High-Performance-Rechner. Als Dokumentation der Energieeffizienz von Supercomputern dient die Green500-Liste. Hintergrund ist einerseits der sich verstärkende Nachhaltigkeitsfokus in der IT, insbesondere aber die Tatsache, dass Energieeffizienz für die Betreiber der Rechner ein äußerst relevanter Kostenfaktor ist.

Neu im GPU-Computing: Intel Xeon Phi als hybrider Co-Prozessor

Die GPGPUs für Supercomputer stammen maßgeblich von Nvidia. Die aktuellste und sehr vielversprechende Rechnerarchitektur des GPU-Experten ist „Pascal“, mit „Cuda“ verfügt das Unternehmen außerdem über eine leistungsstarke integrierte Plattform für GPU-Computing. Die „Tesla“-GPUs des Herstellers sind außerdem eine wichtige und leistungsstarke Server-Komponente.

Im vergangenen Jahr hat Intel mit dem „Xeon Phi“-Co-Prozessor nachgezogen und eine völlig neue Prozessorenklasse auf den Markt gebracht. Der Xeon Phi ist eine Hybridlösung, die Eigenschaften eines Accelerators und eines Universalprozessors mitbringt und als Hochleistungs- und Server-Prozessor zum Einsatz kommen kann.

* Janine El-Saghir* arbeitet für Content.de.

Artikelfiles und Artikellinks

(ID:44613137)