Ausgewählte Projekte
Treffer 1 - 12 von 12 Ergebnissen
-
Effektive Laufzeitunterstützung für zukünftige Programmierstandards
Durch die steigende Anzahl an Rechenkernen pro Prozessor und durch den Trend zur Nutzung von Beschleunigern innerhalb einzelner Rechenknoten reicht ein rein auf Nachrichtenaustausch basierendes Paradigma, wie etwas MPI, für viele Anwendungen nicht mehr aus um optimale Performance zu erreichen. Daher werden immer häufiger hybride Anwendungen entwickelt, welche MPI+OpenMP oder MPI+OpenACC oder MPI+OpenMP+OpenACC einsetzen. Hierdurch steigt die Komplexität der Codeentwicklung und es wird noch schwerer die Korrektheit solcher Programme zu erreichen. Das ELP Projekt hat das Ziel, eine bessere Unterstützung in Korrektheits-Analyse-Werkzeugen für solche Programme zu erreichen. Dazu wird eine Open-Source OpenMP Laufzeitumgebung erweitert, welche Daten an Debugger oder Analysetools wie MUST liefern kann um automatisch gewisse Fehlerklassen überprüfen zu können. Weiterhin sollen diese Daten auch für die Analyse der Performanceeigenschaften der Anwendung verwendet werden, etwa in dem Werkzeug Vampir.
Partner des vom BMBF geförderten Projektes sind die TU Dresden, die science+computing ag, sowie die RWTH Aachen. Außerdem nehmen noch die Allinea GmbH sowie die Intel GmbH als assoziierte Partner an dem Projekt teil.
Die Architektur von HPC-Systemen wird immer komplexer. Das BMBF-geförderte Projekt Chameleon widmet sich dem Aspekt der dynamischen Variabilität von HPC-Systemen, die stetig zunimmt. Die heutigen Programmieransätze sind oft nicht für hochvariable Systeme geeignet und können in Zukunft nur teilweise die Leistungsfähigkeit moderner Systeme ausreizen.
Zu diesem Zweck entwickelt Chameleon eine Task-basierte Programmierumgebung, die für Systeme mit dynamischer Variabilität besser gerüstet ist als die heute üblichen Bulk-synchronous Modelle. Es wird erwartet, dass die Ergebnisse von Chameleon in zukünftige Versionen des OpenMP Programmiermodells einfließen werden.
Die Fähigkeit der Chameleon-Laufzeitumgebung, auf dynamische Variabilität zu reagieren, wird mit Hilfe von zwei Anwendungen evaluiert. SeiSol simuliert komplexe Erdbebenszenarien und die daraus resultierende Ausbreitung seismischer Wellen. Die Parallelverarbeitung auf Knotenebene basiert auf einer explizit implementierten Task-Queue, die Prioritätsbeziehungen zwischen den Tasks berücksichtigt. Chameleons reaktive, aufgabenbasierte Implementierung von Chameleon wurde entwickelt, um diese Aufgabenwarteschlange zu vereinfachen und die Skalierung zu verbessern. sam(oa)² ermöglicht finite Volumen- und Finite-Elemente-Simulationen auf dynamischen adaptiven Dreiecksgittern. Es implementiert Lastausgleich mit Hilfe von raumfüllenden Kurven und kann unter anderem zur Simulation von Tsunami-Ereignissen eingesetzt werden. Chameleon wird die dynamische Ausführung von Tasks auf entfernten MPI-Prozessen ermöglichen und eine reaktive Infrastruktur für allgemeine 1D-Lastausgleichsprobleme entwickeln.
Weitere Informationen finden Sie auf der Projekthomepage.
Die Komplexität von Stromnetzen ebenso wie die von Hochleistungsrechnern nimmt ständig zu. Insbesondere der steigende Anteil erneuerbarer Energien an der Stromerzeugung bringt grundlegende Veränderungen im Stromnetz mit sich. Eine wachsende Zahl von Teilnehmern ist in der Lage, Strom zu produzieren und zu verbrauchen. Jede Verhaltensmodifikation hat somit Einfluss auf das Gitter. Im Bereich des Hochleistungsrechnens nimmt die Komplexität des Systems zu. So wird der neue RWTH-Cluster CLAIX, der im November 2016 in Betrieb gehen soll, 600 2-Sockel-Compute-Knoten haben und jede CPU 24 Cores (48 Cores inklusive Hyperthreading). Teile des Systems werden durch GPUs beschleunigt und die Leistungsaufnahme des Gesamtsystems, aber auch jeder einzelnen Komponente kontinuierlich überwacht. Änderungen am Software-Stack und ein eventueller Austausch einer defekten Hardwarekomponente beeinflussen die Performance, den Stromverbrauch und auch die Ausfallrate. Insbesondere die Prognose der Auswirkungen von Veränderungen und deren Langzeitfolgen wie die Reduzierung der Ausfallraten ist eine große Herausforderung. Data Mining ist die Schlüsseltechnologie zur Handhabung solch komplexer Systeme und ist im Prinzip ein rechnergestützter Prozess der Mustererkennung in großen Datenmengen. Data Mining ist generell eine der Schlüsseltechnologien für die digitale Gesellschaft. Basierend auf den beiden Beispielen - dem Umgang mit komplexen Stromnetzen und Supercomputern - schafft das Projekt ScaMPo ein skalierbares Framework, um die Daten zu sammeln und in einer Cloud-Infrastruktur zu speichern. Anschließend werden die Daten analysiert, Muster entdeckt und das Verständnis des Systems verbessert. Bei Supercomputern werden die Betriebskosten gesenkt, während im Stromnetz die Stabilität und die Durchdringung erneuerbarer Energien erhöht werden. Dieses Projekt wird keine neuen Data-Mining-Techniken entwickeln. Vielmehr wird das Projekt auf Open-Source-Ansätzen für Data Mining basieren und sich auf die Stärke des Projektpartners konzentrieren, d. h. das Design eines skalierbaren und robusten Ansatzes. Die langfristige Vision des Projektes ist die Verallgemeinerung des Ansatzes für andere Forschungsgebiete und die Schaffung eines Kompetenzzentrums für skalierbare Data-Mining-Technologien.
Der Stifterverband hat im Rahmen der Fellowships für Innovationen in der digitalen Hochschullehre NRW das Projekt von Lena Oden (FernUniversität in Hagen) und Christian Terboven (RWTH Aachen) zur Förderung angenommen.
Parallele Programmierung und Datenverarbeitung auf Multicore- und Manycore-Architekturen wird in vielen Fächern zunehmend wichtiger, etwa für Deep Learning oder große Simulationen. Die Motivation für die Nutzung von entsprechenden Hochleistungsrechnern wird leider durch viele technischen Hürden eingeschränkt und führt daher oft zu einer passiven Teilnahme der Studierenden an den praktischen Übungen der Lehrveranstaltungen. Ziel des Projekts ist es daher, eine browserbasierte Umgebung mit dazu passenden Lehreinheiten zu schaffen. Diese ermöglicht einen einfacheren Zugang zu den Systemen und unterstützt die Studierenden durch passende Lehrmodule, selbstständig die Konzepte paralleler Programmierung zu erlernen, ohne sich zuvor mit technischen Feinheiten der Systeme beschäftigen müssen. Die Plattform soll zudem eine kollaborative Arbeit ermöglichen, damit auch Studierende an unterschiedlichen Orten gemeinsam arbeiten können. Durch eine interaktive Visualisierung und gezielte Anreize wie "Performance-Wettbewerbe" sollen die Studierenden zusätzlich motiviert werden, eigene, bessere Lösungen zu entwickeln.
Mehr Details
Weitere Informationen bietet die Webseite des Stifterverbandes.
Die Jülich Aachen Research Alliance, kurz JARA, eine Kooperation der RWTH Aachen University mit dem Forschungszentrum Jülich, bietet ein hoch angesehenes Forschungsumfeld, das in der internationalen Spitzenliga steht und für die besten Forscher weltweit attraktiv ist. In sechs Sektionen forscht JARA in den Bereichen translationale Hirnmedizin, Kern- und Teilchenphysik, neuartige intelligente Materialen, Konzepte der Informationstechnologie, Hochleistungsrechnen und nachhaltige Energie.
Das IT Center der RWTH Aachen University unterstützt den Bereich JARA-HPC, der in erster Linie dazu beiträgt, die Möglichkeiten von Hochleistungsrechnern und Computersimulationen für aktuelle Fragestellungen der Forschung zu nutzen. Darüber hinaus soll eine gemeinsame Infrastruktur für Forschung und Lehre in den Bereichen Hochleistungsrechnen und Visualisierung geschaffen werden. Mehr..
Exascale Systeme erfordern mehrstufig-parallele Programme zu schreiben, was bedeutet, dass Programmierer mehrere verschiedene Paradigmen einsetzen müssen, um jede einzelne Ebene der Parallelität im System zu adressieren. Die langfristige Herausforderung besteht darin, bestehende Modelle weiterzuentwickeln und neue Programmiermodelle zu entwickeln, um die Anwendungsentwicklung auf Exascale-Maschinen besser zu unterstützen. Im Multi-Level-Programmierparadigma FP3C können Anwender High-Level-Parallelität in der YvetteML-Workflow-Sprache (YML) zum Ausdruck bringen und parallele Komponenten im XcalableMP (XMP)-Paradigma einsetzen. XMP ist eine PGAS-Sprache, die vom japanischen PC-Cluster-Konsortium für High-Level-Programmierung spezifiziert wurde und das wichtigste Forschungsinstrument für Japans Forschung im Bereich der Post-Petascale Programmierung von Modellen, die auf Exascale abzielen. YML wird verwendet, um die Parallelität einer Anwendung auf einem sehr hohen Niveau zu beschreiben, insbesondere um komplexe Anwendungen zu koppeln. Durch die Entwicklung von Techniken zur Überprüfung der Korrektheit beider Paradigmen und durch die Untersuchung der grundlegenden Anforderungen an das Design für und dann die Korrektheit von Parallelisierungsparadigmen zu überprüfen, zielt MYX darauf ab, das Know-how und die Lehren aus den verschiedenen Bereichen zu kombinieren, um die notwendigen Inputs abzuleiten, die für die Entwicklung zukünftiger Programmiermodelle und Software-Engineering-Methoden notwendig sind.
In MYX untersuchen wir die Anwendung skalierbarer Korrektheitsprüfmethoden auf YML, XMP und ausgewählte Features von MPI. Daraus ergibt sich eine klare Vorgabe, wie das Risiko von Fehlern begrenzt und die Parallelität zum Fangen von Fehlern, die aus prinzipiellen Gründen nur zur Laufzeit erkannt werden können, sowie erweiterte und skalierbare Korrektheitsprüfmethoden am besten zum Ausdruck gebracht werden können.
Weitere Informationen finden Sie auf der SSPEXA Webseite und der Webseite der Deutschen Forschungsgemeinschaft.
Seit 1998 beschäftigt sich das HPC Team des IT Centers der RWTH Aachen mit dem Thema Shared-Memory-Parallelisierung mit OpenMP. Auf den derzeit größten Shared-Memory-Rechnern des RZ mit 1024 Prozessorkernen wird OpenMP produktiv seit dem eingesetzt. OpenMP unterstützt mittlerweile auch Heterogene Rechner sowie Vektorisierung. mehr (auf Englisch)