mini|Der Columbia-Supercomputer der NASA mit 20×512 Intel-Itanium-2-Prozessoren mini|Logik-Recheneinheit eines Cray X-MP-Rechners, etwa Mitte der 1980er Jahre
Als Supercomputer (aus dem Englischen entlehnt, dazu teilweise übersetzt Superrechner und weiter übersetzt „[der] Großrechner“; außerdem auch Hochleistungsrechner genannt) werden für ihre Zeit besonders schnelle Computer (Allzweckrechner) bezeichnet. Dabei ist es unerheblich, auf welcher Bauweise der Computer beruht, solange es sich um einen universell einsetzbaren Rechner handelt. Ein typisches Merkmal eines modernen Supercomputers ist seine besonders große Anzahl an Prozessoren, die auf gemeinsame Peripheriegeräte und einen teilweise gemeinsamen Hauptspeicher zugreifen können. Supercomputer werden häufig für Computersimulationen im Bereich des Hochleistungsrechnens eingesetzt.
Supercomputer spielen eine essenzielle Rolle im wissenschaftlichen Rechnen und werden dort in diversen Disziplinen eingesetzt, etwa Simulationen im Bereich der Quantenmechanik, Wettervorhersagen, Klimatologie, Entdeckung von Öl- und Gasvorkommen, Molekulardynamik, biologischen Makromolekülen, Kosmologie, Astrophysik, Fusionsforschung, Erforschung von Kernwaffentests bis hin zur Kryptoanalyse.
In Deutschland sind Supercomputer überwiegend an Universitäten und Forschungseinrichtungen wie etwa den Max-Planck-Instituten zu finden. Wegen ihrer Einsatzmöglichkeiten fallen sie unter deutsche Gesetze zur Waffenexportkontrolle.Am Beispiel des SuperMUC:
Geschichte und Aufbau mini|Die Cray-1 im Deutschen Museum in München
Supercomputer spalteten sich in der Geschichte der Computerentwicklung in den 1960er Jahren von den wissenschaftlichen Rechnern und den Großrechnern ab. Während Großrechner eher auf hohe Zuverlässigkeit hin optimiert wurden, wurden Supercomputer in Richtung hoher Rechenleistung optimiert. Der erste offiziell installierte Supercomputer Cray-1 schaffte 1976 130 MegaFLOPS.
Ursprünglich wurde die herausragende Rechenleistung durch maximale Ausnutzung der verfügbaren Technik erzielt, indem Konstruktionen gewählt wurden, die für größere Serienproduktion zu teuer waren (z. B. Flüssigkeitskühlung, exotische Bauelemente und Materialien, kompakter Aufbau für kurze Signalwege), die Zahl der Prozessoren war eher gering. Seit geraumer Zeit etablieren sich vermehrt sogenannte Cluster, bei denen eine große Anzahl von (meist preiswerten) Einzelrechnern zu einem großen Rechner vernetzt werden. Im Vergleich zu einem Vektorrechner besitzen die Knoten in einem Cluster eigene Peripherie und ausschließlich einen eigenen, lokalen Hauptspeicher. Cluster verwenden Standardkomponenten, deshalb bieten sie zunächst Kostenvorteile gegenüber Vektorrechnern. Sie erfordern aber einen weit höheren Programmieraufwand. Es ist abzuwägen, ob die eingesetzten Programme sich dafür eignen, auf viele Prozessoren verteilt zu werden.
mini|Prozessoren, die von den Top500 Supercomputern genutzt werden (nicht aktuell) mini|IBM Blue Gene
Moderne Hochleistungsrechner sind vor allem Parallelrechner. Sie bestehen aus einer großen Anzahl an miteinander vernetzten Computern. Zusätzlich verfügt jeder Computer in der Regel über mehrere Hauptprozessoren (CPUs). Auf einem Supercomputer können nicht unmodifiziert die gleichen Programme wie auf einem gewöhnlichen Computer laufen, sondern speziell abgestimmte Programme, die die einzelnen, parallel arbeitenden Prozessoren beschäftigen. Supercomputer sind (wie auch heutzutage jeder handelsübliche Computer im unteren Preissegment) Vektorrechner. Dominierend sind mittlerweile Standardarchitekturen aus dem Bereich von Personalcomputern und Servern, etwa x86-64 von Intel (Xeon) und AMD (Epyc). Sie unterscheiden sich von gewöhnlicher Personalcomputer-Hardware nur geringfügig. Es gibt aber auch immer noch Spezialhardware wie IBM BlueGene/Q und Sparc64.
Die Verbindungen zwischen Einzelcomputern werden bei Supercomputern mit speziellen Hochleistungsnetzwerken umgesetzt, verbreitet ist dabei unter anderem InfiniBand. Computer werden oft mit Beschleunigerkarten ausgestattet, etwa Grafikkarten oder der Intel Xeon Phi. Grafikkarten eignen sich zum Einsatz im High Performance Computing, weil sie exzellente Vektorrecheneinheiten darstellen und Probleme der Linearen Algebra effizient lösen. Die zugehörige Technik nennt sich General Purpose Computation on Graphics Processing Unit (GPGPU).
Bei Clustern werden die einzelnen Computer oft Knoten (englisch nodes) genannt und mittels Clustermanagament-Werkzeugen zentral konfiguriert und überwacht.
Betriebssystem und Programmierung mini|Betriebssysteme der Top500 Supercomputer. Linux (grün) löste in den 2000er Jahren die zuvor dominanten Unix-Betriebssysteme (hellblau-Töne) ab.List Statistics
Während noch in den 1990er Jahren diverse Unix-Varianten bei Supercomputern verbreitet waren, hat sich in den 2000er Jahren die Freie Software Linux als Betriebssystem durchgesetzt. In der TOP500-Liste der schnellsten Computersysteme (Stand Juni 2012) werden insgesamt 462 ausschließlich unter Linux betriebene Systeme und 11 teilweise (CNK/SLES 9) unter Linux betriebene Systeme aufgelistet. Damit laufen 92,4 % der Systeme vollständig unter Linux. Fast alle anderen Systeme werden unter Unix oder Unix-artigen Systemen betrieben. Der im Desktop-Bereich größte Konkurrent Windows spielt im Bereich der Höchstleistungsrechner kaum eine Rolle (0,4 %).
Verwendete Programmiersprachen zur Programmierung von Programmen sind vor allem Fortran und C bzw. C++. Um möglichst schnellen Code zu generieren, wird meist auf Compiler der Supercomputer-Hersteller (etwa CRAY oder Intel) zurückgegriffen. Programme im High Performance Computing (HPC) werden typischerweise in zwei Kategorien eingeteilt: Parallelisierung mittels Shared Memory, in der Regel lokal auf einem einzelnen Knoten. Hierzu sind Schnittstellen wie OpenMP oder Threading Building Blocks verbreitet. Ein einzelner Betriebssystemprozess beschäftigt in der Regel alle zur Verfügung stehenden CPU-Kerne bzw. CPUs. Distributed-Memory-Parallelisierung: Ein Betriebssystemprozess läuft auf einem Kern und muss zur gemeinschaftlichen Problemlösung Nachrichten mit anderen Prozessen austauschen (Message passing). Dies geht knotenintern oder über Knotengrenzen hinweg. Das Message Passing Interface ist der Industriestandard, um diese Art Programme zu programmieren.
In der Praxis findet man oft hybride Verfahren als Kombination beider Parallelisierungstechniken. Sie sind deswegen populär, weil Programme oft nicht gut genug skalieren, um alle Kerne eines Supercomputers mit reinem Message Passing auszulasten.
Wenn Supercomputer mit Beschleunigerkarten (Grafikkarten oder Rechenkarten) ausgestattet sind, zergliedert sich die Programmierung nochmals auf die des Hostcomputers und die der Beschleunigerkarte. OpenCL und CUDA sind dabei gängige Schnittstellen, die die Programmierung derartiger Komponenten ermöglichen.
Hochleistungsrechner werden in der Regel nicht von einem einzigen Benutzer bzw. Programm genutzt. Stattdessen werden Job-Scheduler wie Simple Linux Utility for Resource Management (SLURM) oder IBMs LoadLeveler verwendet, um einer großen Anzahl an Benutzern zu ermöglichen, kurzzeitig Teile des Supercomputers zu verwenden. Die Zuteilung erfolgt dabei exklusiv auf Ebene von Knotenzuordnung oder Prozessorzuordnung. Die verbrauchte Prozessorzeit wird dabei in Einheiten wie CPU-Stunden oder Knoten-Stunden gemessen und ggf. abgerechnet.
Einsatzzweck Die Herstellungskosten eines Supercomputers aus der TOP10 bewegen sich derzeit in einem hohen zweistelligen, oftmals bereits dreistelligen Euro-Millionenbetrag.
Die heutigen Supercomputer werden überwiegend zu Simulationszwecken eingesetzt. Je realitätsnäher eine Simulation komplexer Zusammenhänge wird, desto mehr Rechenleistung wird in der Regel benötigt. Ein Vorteil der Supercomputer ist, dass sie durch ihre extrem schnelle und damit große Rechenleistung immer mehr Interdependenzen berücksichtigen können. Dies erlaubt das Einbeziehen weiterreichender, oftmals auch unscheinbarer Neben- oder Randbedingungen zur eigentlichen Simulation und gewährleistet dadurch ein immer aussagekräftigeres Gesamtergebnis.
Die derzeitigen Haupteinsatzgebiete der Supercomputer umfassen dabei die Bereiche Biologie, Chemie, Geologie, Luft- und Raumfahrt, Medizin, Wettervorhersage, Klimaforschung, Militär und Physik.
Im militärischen Bereich haben Supercomputer es z. B. ermöglicht, neue Atombombenentwicklungen durch Simulation, ohne Stützdaten durch weitere unterirdische Atombombenversuche, durchzuführen. Die Bereiche kennzeichnen sich dadurch, dass es sich um sehr komplexe Systeme bzw. Teilsysteme handelt, die in weitreichendem Maße miteinander verknüpft sind. So haben Veränderungen in dem einen Teilsystem meist mehr oder minder starke Auswirkungen auf benachbarte oder angeschlossene Systeme. Durch den Einsatz von Supercomputern wird es immer leichter möglich, viele solcher Konsequenzen zu berücksichtigen oder sogar zu prognostizieren, wodurch bereits weit im Vorfeld etwaige Gegenmaßnahmen getroffen werden könnten. Dies gilt z. B. bei Simulationen zum Klimawandel, der Vorhersagen von Erdbeben oder Vulkanausbrüchen sowie in der Medizin bei der Simulation neuer Wirkstoffe auf den Organismus. Solche Simulationen sind logischerweise, ganz unabhängig von der Rechenleistung, nur so genau, wie es die programmierten Parameter bzw. Modelle zur Berechnung zulassen. Die enormen Investitionssummen in die stetige Steigerung der FLOPS und damit die Entwicklung von immer schnelleren Supercomputern werden vor allem mit den Nutzenvorteilen und dem eventuellen „Wissensvorsprung“ für die Menschheit gerechtfertigt, weniger aus den Aspekten des allgemeinen technischen Fortschritts.
Situation in Deutschland mini|TOP500 Supercomputer-Platzierungen nach Ländern (Deutschland, Schweiz, Österreich) im Leistungsvergleich zu den TOP-3 der Welt. (Stand Juni 2013) – Aktuell (Juni 2017) steht der drittschnellste Rechner erstmals in der Schweiz.China verteidigt Spitzenposition orf.at, 19. Juni 2017, abgerufen am 19. Juni 2017.
Das wissenschaftliche Hochleistungsrechnen ist in Deutschland durch das Gauss Centre for Supercomputing (GCS) organisiert, welches Mitglied im europäischen Partnership for Advanced Computing in Europe (PRACE) ist. Der Verbund für Nationales Hochleistungsrechnen (NHR) stellt Hochleistungsrechenressourcen der mittleren Leistungsklasse (Ebene 2) zur Verfügung. Die Mehrzahl der 16 deutschen Bundesländer unterhalten Landeshochrechnerverbände, um die Nutzung ihrer Hochleistungsrechner zu organisieren. In der Wissenschaftswelt wird in der Regel ein Kontingent an CPU-Stunden ausgeschrieben und unter Bewerbern verteilt.
Ausgewählte Superrechner Aktuelle Superrechner Die schnellsten Superrechner nach Leistung werden heutzutage halbjährlich in der TOP500-Liste aufgeführt. Als Bewertungsgrundlage dient der LINPACK-Benchmark. Die schnellsten Superrechner nach Energieeffizienz bzw. MFLOPS/W werden seit November 2007 in der Green500-Liste geführt. Den größten Anteil (117) der Top 500 leistungsstärksten Rechner weltweit konnte 2018 Lenovo installieren.Lenovo größter Anbieter Top500 Computer Business Wire 26.6.2018
Diese Green500-Liste vom November 2014 weist länderweise gemittelte Effizienzen von 1895 MFLOPS/W (Italien) bis hinunter zu 168 MFLOPS/W (Malaysia) auf.
Ausgewählte aktuelle Superrechner – weltweit
Stand 2025. Jedoch Piz Daint, Schweiz, und Levante, Deutschland, nachgetragen.