Kategorien
Management

Cloud Computing Nutzen: High Performance Computing

Die Verarbeitung großer Datenmengen für die eine hohe Rechenleistung benötigt wird ist in den vergangenen Jahren stark angestiegen. Davon betroffen sind vor allem Unternehmen aus den Bereichen der Medizintechnik, Finanzdienstleitungen und Medien.

Für einzelne rechenintensive Projekte werden die Kapazitäten Infrastrukturen oftmals stark erweitert, da die bestehende Infrastruktur nicht leistungsfähig genug ist. Im schlimmsten Fall stehen zusätzlich nicht ausreichend finanzielle Mittel und Zeit zur Verfügung, um die Infrastruktur gemäß den Anforderungen anzupassen. Hinzu kommt der Aufwand zur Errichtung und dem Erweitern der Serverumgebungen und der damit verbundenen Beschaffung und Bereitstellung der Hard- und Software. Das Gewährleisten einer hohen Verfügbarkeit darf ebenso wenig vernachlässigt werden wie die Sicherheit der gesamten Umgebung. Weiterhin muss die Infrastruktur verwaltet (u.a. Zuweisung des Speichers, Konfiguration der Batchprozesse) werden um den Geschäftszweck zu erfüllen, was implizit dazu führt, dass die Mitarbeiter dementsprechend fortgebildet und verwaltet werden müssen.

Eine weitere Herausforderung ist die Verwaltung und Neuzuordung der Ressourcen nach dem erfolgreichen Beenden eines Projekts. Werden die verfügbaren Ressourcen nicht umgehend neuen Projekten oder Aufgaben zugewiesen, stehen diese nur rum und verursachen Kosten ohne einen Wertbeitrag zu liefern.

Mittels Cloud Computing können die Problematiken der oben genannten Punkte minimiert werden und Ressourcen für Projekte aus dem Bereich des High Performance Computing (HPC) bzw. Parallel Computing bedarfsgerecht und kosteneffizient bezogen werden.

Für die Verlagerung von HPC-Projekte in die Cloud eines Anbieters ist zu prüfen, wieviele Speicher- und Rechenkapazitäten zur Verfügung stehen und in welchem Zeitraum weitere benötigte Ressourcen für das Projekt hinzugefügt bzw. wieder freigegeben werden können. In diesem Zusammenhang steht weiterhin die Kostenfrage, also ob langfristige Verträge eingegangen werden müssen oder ob nur die Ressourcen abgerechnet werden, die auch tatsächlich genutzt wurden. Ein weiterer technischer Aspekt sind die verfügbaren Programmiersprachen und Modelle, die der Anbieter zur Verfügung stellt bzw. unterstützt.

Kategorien
Grundlagen

Was sind Supercomputer?

Supercomputer sind Hochleistungsrechner die auf eine sehr hohe Verarbeitungsleistung ausgerichtet sind. Sie verfügen über ein Array von Prozessoren, die auf eine gemeinsame Peripherie und einen gemeinsamen Hauptspeicher zugreifen können. Die Aufgaben werden parallel auf mehrere Prozessoren verteilt und anschließend ebenfalls mit hoher Parallelität abgearbeitet. Da das Array dabei aus mehreren tausend Prozessoren bestehen kann, wird damit die Arbeitsgeschwindigkeit erhöht. Die Rechnerarchitektur eines Supercomputers ist dabei speziell für eine bestimmte Anwendung angepasst, um die höchstmögliche Verarbeitungsgeschwindigkeit zu erreichen.

In den 1970er wurden die ersten Supercomputer von der Firma Cray (benannt nach dem Unternehmensgründer Seymour Cray) hergestellt. Der erste Supercomputer bekam den Namen Cray-1 und verfügte über 250 MegaFLOPS.

Welche Ziele werden mit Supercomputern verfolgt?

Der Wunsch aufwendige Abbildungen der Realwelt (Simulationen) und immer genauere Vorhersagen und aussagekräftige Gesamtergebnisse zu liefern ist in der Vergangenheit drastisch gewachsen. Hinzu kommt, dass Simulationen immer realitätsnaher werden und die beiläufigen Neben- und Randbedingungen zunehmen. Damit u.a. solche umfangreichen und hochparametrigen numerischen Probleme schnell gelöst werden können und immer mehr komplexere Zusammenhänge mit einbezogen werden können, sind Systeme mit extrem schneller und hoher Rechenleistung erforderlich. Für die Lösungen solcher Problemstellungen kommen Supercomputer zum Einsatz. Typischerweise werden Supercomputer heute in den folgenden Bereichen eingesetzt.

  • In der Klimaforschung zur Wettervorhersage.
  • Für die Auswertung hochauflösender bewegter Bilder in Echtzeit.
  • Für den Einsatz in Verteidigungssystemen als Zentrale Einheit.
  • In der Festkörperphysik.
  • In der Weltraumforschung.
  • Zur Berechnung von Filmsequenzen.
  • In den Bereichen der Simulations- und Crashtechnik.

Wie zu erkennen ist, handelt es sich in den Beispielen um Bereiche, in denen komplexe Systeme oder Teilsysteme untereinander stark verbunden sind. Diese Abhängigkeiten führen dazu, das Veränderungen in einem Teilsystem sich in der Regel auch parallel auf alle weiteren vorhanden Systeme auswirken, was eine hohe Rechenleistungen voraussetzt.