Laden...

GPGPU Cluster

sysGen GPGPU Cluster auf Basis von NVIDIA GPGPUs

In den letzten zehn Jahren konnten x86-Standard-Prozessoren die derzeit dominierenden RISC-Prozessoren weitgehend ersetzen und besitzen heute bis zu 70 Prozent Marktanteil im Bereich High Performance Computing der HPC-Systeme. Ab 2010 prognostiziert IDC, dass General Purpose Graphics Processing Units (GPGPUs) erhebliche Marktanteile im Supercomputing Bereich gewinnen wird. Viele Beschaffungen in 2010 werden auf kombinierte GPGPU-x86-Systeme. Das US Oak Ridge National Laboratory hat Pläne für einen Mega-Supercomputer auf Basis von NVIDIAs "Fermi" GPGPU Co-Prozessoren angekündigt. GPGPUs beginnen sich in Industrie- und Finanzbereichen wie Öl/Gas, Finanzdienstleistungen und Bio-Life Sciences zu verbreiten.

























Als Chinas Tianhe-1A Supercomputer, durch den massiven Einsatz von GPU-Grafikchips, auf Platz 1 der TOP500 Liste gelangte, wuchs das Interesse an GPUs weiter stark an. Viele HPC-Anwender stellen sich die Frage, welchen Stellenwert GPU-Computing für sie künftig einnehmen soll.

Obwohl GPUs für viele Anwendungen eine 20-fache Leistungserhöhung (oder mehr) gegenüber CPUs erbringen, bedeutet das nicht zwangsläufig, dass GPUs in jedem Fall die richtige Wahl darstellen.

GPUs sind spezialisierte Prozessoren, deren extreme Leistungsfähigkeit bei Grafikberechnung, nicht über ihre Schwierigkeiten bei der Durchführung allgemeiner Aufgabenlösungen hinwegtäuschen darf. Der Einsatz entsprechender Prozessoren erfordert umfangreiche Anpassungen (Re-Design, Umschreiben) vorhandener Software, eine Erweiterung rudimentärer Programmiertools und die Beseitigung von Einschränkungen in Programmiersprachen und Funktionen.

Neben Herausforderungen bei der Programmierung, besteht auch ein Kommunikations-Engpass beim Datentausch zwischen GPUs, Hauptspeicher und Peripherie. Obwohl der Einsatz von GPUs die Verarbeitungsgeschwindigkeit einzelner Knoten um mehr als das 30-fache beschleunigen kann, konnten keine 30-fache Bandbreitenerhöhung und 30 -fache Latenz-Verbesserung erzielt werden, weshalb die Skalierung in GPU-Clustern immer beschränkt sein wird.

CPUs werden von den heutigen Industrie-Standards hervorragend unterstützt, während der Einsatz von GPUs stark von proprietären Software-Systemen abhängt. Da es vielen Softwareanbietern schwer fällt mehrere Compute-Plattformen zu unterstützen, wird die Portierung von Software für GPUs stark von steigenden Absatzzahlen abhängen. Es gibt aber eine steigende  Unterstützung seitens der Grafik-Chip-Hersteller NVIDIA und AMD. Entwickler, die Programme für GPUs entwickeln, können zwischen den beiden Programmierstandards der proprietären NVIDIA CUDA Parallel Computing-Architektur und der von AMD und NVIDIA unterstützten OpenCL (Open Computing Language) wählen.

In der HPC Gemeinde besteht der Konsens, dass mit den richtigen Ressourcen und Schulungen, der Einsatz von GPUs sehr vorteilhaft sein kann. Nach den Portierungsmühen von Programmcode, können sich extremen Leistungssteigerungen gegenüber reinen CPU-Systeme einstellen. GPUs entfalten ihre volle Dominanz im Bereich der Datenanalyse, wo sie Netto-Beschleunigungen des bis zu 200-fachen bewirken. Der schnelle Anstieg erforderlicher Post-Rechenleistung für wissenschaftliche Daten wird deshalb nur durch massiven GPU-Einsatz zu bewältigen sein.

Da heutige GPUs nicht direkt auf Massenspeicherdaten zugreifen und keine Daten zwischen Clusterknoten austauschen können, werden sie die gute alte CPU auch nicht vollständig verdrängen. GPU-Supercomputer werden auf absehbare Zeit auf GPU-CPU-Hybrid-Systemen basieren.

Die Zukunft liegt aber in der Verschmelzung von CPU und GPU zu einem CPU-GPU-Hybrid-Prozessor. Der Wettlauf zwischen Den Herstellern Intel, AMD und NVIDIA hat längst begonnen …

Mehr Informationen anzeigen