„Hochleistungsrechnersysteme und -anwendungen“ – Kurs 40.000 Rubel. von der MSU, Ausbildung 8 Wochen. (2 Monate), Datum: 27. November 2023.
Verschiedenes / / November 27, 2023
Zweck Die Durchführung des Programms ist eine Grundausbildung für Personen, die Kenntnisse und Fähigkeiten in der Entwicklung von Hochleistungsanwendungen für Supercomputer erwerben möchten.
Das Programm untersucht die grundlegenden Konzepte und Prinzipien des Aufbaus von Supercomputersystemen, die Architektur und Funktionalität von Supercomputersystemsoftware, MPI- und OpenMP-Parallelprogrammiertechnologien, Methoden zum Debuggen und Optimieren der Effizienz paralleler Programme für Supercomputer unter Verwendung von MPI-Nachrichtenübermittlungstechnologien und OpenMP.
Besonderes Augenmerk wird auf das Studium und die praktische Entwicklung der untersuchten Technologien und der verwendeten Methoden gelegt Aufbau paralleler Programme am Beispiel der an der Moskauer Staatsuniversität installierten Supercomputer: die Systeme Lomonosov und Blue Gen/P. Insbesondere werden die Besonderheiten der Nutzung moderner Compiler für die auf diesen Systemen installierten Programmiersprachen C, C++, Fortran untersucht, der Einsatz parallele mathematische Bibliotheken, Instrumentensysteme zum Debuggen und Anpassen der Effizienz paralleler Programme, Methoden zur Organisation der parallelen Arbeit mit Dateien.
Studienform
Vollzeit
Umfang des Programms (Studienstunden)
Insgesamt - 72
Klassenzimmer - 60
Zulassungsvoraussetzungen: Personen mit höherer Bildung, beruflicher Tätigkeit - Wissenschaftler im Bereich Informations- und Kommunikationstechnologien, mathematische Modellierung mit Hochleistungsrechnersysteme, Lehrer höherer Bildungseinrichtungen, Ingenieure und technische Mitarbeiter von Organisationen, die mit dem Einsatz von Hochleistungsrechnern verbunden sind Technologie.
Lernerfolge:
Beherrscht die parallelen Programmiertechnologien MPI und OpenMP und arbeitet mit Supercomputern und Informationsnetzwerken. Verständnis der Prinzipien des Aufbaus von Supercomputer-Architekturen und ihrer Software, Kenntnis grundlegender Methoden und Werkzeuge zur Entwicklung paralleler Programme für Supercomputer.
Als Ergebnis der Beherrschung des Kurses sollte der Student:
wissen:
· Grundlagen der Methoden zur Entwicklung paralleler Programme für Supercomputer;
· Prinzipien des Supercomputer-Architekturdesigns;
· Spezifikation der parallelen Programmiertechnologie MPI-1 und MPI-2, Zusammensetzung und Funktionen verschiedener offener Bibliotheken, die MPI-Standards implementieren;
· OpenMP-Anweisungen und -Funktionen;
· Grundkonzepte und Richtlinien von Task-Management-Systemen für Supercomputer;
· Methoden des Fernzugriffs auf Supercomputer, SSH- und FTP-Protokolle für den Fernzugriff und das Kopieren von Informationen;
· Methoden zur Beurteilung der Wirksamkeit paralleler Programme
in der Lage sein:
· die untersuchten Technologien effektiv in der Praxis der Entwicklung paralleler Programme für die Supercomputer Lomonossow und Blue Gene/P anwenden.
Eigen Technologien zur Entwicklung paralleler Programme für Supercomputer.
Modul 1. Einführung in das Thema Hochleistungsrechnen.
1.1. Grundlegende Definitionen und Grundkonzepte.
1.2. Begründung der Notwendigkeit, Supercomputer zu entwickeln. „Great Challenge“-Aufgaben.
1.3. Hauptrichtungen der Entwicklung von Supercomputertechnologien. Probleme des Exaflop-Computings.
1.4. Beispielprobleme
2. Prinzipien des Entwurfs von Architekturen für Hochleistungsrechnersysteme.
2.1. Grundelemente von Multiprozessor-Rechnersystemarchitekturen.
2.1.1. Prozessorknoten. Beispiele für Implementierungen.
2.1.2. Mehrstufige Speicherorganisation von Supercomputern.
2.1.3. Methoden zur Implementierung von Kommunikationssubsystemen von Prozessorknoten.
2.1.4. Methoden der Hardware-Organisation von Eingabe-Ausgabe-Systemen.
2.2. Überprüfung der Architekturen von Multiprozessor-Computersystemen.
2.2.1. Multiprozessorsysteme mit gemeinsamem Speicher.
2.2.2. Multiprozessorsysteme mit verteiltem Speicher.
2.2.3. Heterogene Hochleistungsrechnersysteme
2.2.4. Massiv parallele Computersysteme.
2.2.5. Clustersysteme.
2.3. Methoden zur Bewertung der Leistung von Computersystemen.
2.4. Trends in der Entwicklung von Hochleistungsrechnersystemen. Moores Gesetz. Top500- und Top50-Liste.
2.5. Beispiele für Hochleistungsrechnersystemarchitekturen.
2.5.1. Architektur des Supercomputers der Moskauer Staatlichen Universität „Lomonossow“
2.5.2. Architektur des IBM Regatta Shared-Memory-Multiprozessorsystems.
2.5.3. Architektur des massiv parallelen Computersystems BlueGene/P
3. Grundelemente der Software für Multiprozessor-Computersysteme.
3.1. Betriebssystem.
3.2. Parallele Dateisysteme.
3.3. Job-Management-Systeme.
3.4. Parallele mathematische Bibliotheken.
3.5. Programmiersysteme und Werkzeugumgebungen zum Entwickeln und Debuggen paralleler Programme.
3.6. Lomonosov-Supercomputer-Software, BlueGene/P.
Modul 2. Grundlagen der OpenMP-Technologie.
2.1 Grundkonzepte. Sekundärfunktionen. Parallele und sequentielle Bereiche. Arbeitsverteilung. Parallele Schleifen.
2.2 Parallelabschnitte. Aufgaben. Synchronisationsmethoden.
Modul 3. Grundlagen der MPI-Message-Passing-Technologie.
3.1. MPI-Standards: Implementierung, Entwicklungsrichtungen.
3.2. Grundkonzepte und Prinzipien zum Aufbau paralleler Programme mithilfe der MPI-Technologie.
3.3. Das Konzept der Nachrichtenübertragungsmodi.
3.4. Organisation von Punkt-zu-Punkt-Austauschen.
3.5. Kollektive MPI-Operationen.
3.6. Abgeleitete Datentypen.
3.7. Virtuelle Topologien und Operationen auf Kommunikatoren.
3.8. Interkommunikatoren. Einseitige Kommunikation. Fehlerbearbeitung.
3.9. Dynamische Prozesssteuerung. Parallele E/A.