teaching:wintersemester_2010_2011:hochleistungsrechnen

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

teaching:wintersemester_2010_2011:hochleistungsrechnen [2018-05-09 17:25] (current)
Line 1: Line 1:
 +====== Vorlesung „Hochleistungsrechnen“ ======
 +===== Beschreibung =====
  
 +Hochleistungsrechnen ist eine wichtige Technik der Informatik, mit deren Hilfe in den Natur- und Ingenieurwissenschaften neue Erkenntnisse gewonnen werden.
 +Insbesondere dei durch das Hochleistungsrechnen ermöglichte computergestützte Simulation wird neben der Theorie und dem Experiment zum dritten Standbein vieler Wissenschaften.
 +Neue Einsichten z. B. im Bereich der Klimaforschung,​ der Bioinformatik,​ der Teilchenphysik und des Automobilbaus werden durch Simulationen computerbasierter Modelle gewonnen und sind ohne Hochleistungsrechnen schon seit vielen Jahren nicht mehr möglich.
 +
 +Gleichzeitig verändern sich die Rechnerarchitekturen in Arbeitsplatzrechnern:​ Durch den Einsatz von Mehrkern-Prozessoren finden wir auch hier Strukturen von Hochleistungsrechnern und die Programmierer müssen hierauf eingehen, wenn sie den Prozessor effizient nutzen wollen.
 +
 +Die Vorlesung bietet einen Einstieg in die Konzepte des Hochleistungsrechnens und vermittelt grundlegende Kenntnisse, um mit diesen Systemen zu arbeiten.
 +
 +Die Vorlesung ist in mehrere Themenblöcke gegliedert, die aufeinander aufbauen, bei entsprechenden Vorkenntnissen aber auch einzeln gehört werden können.
 +
 +Im ersten Block werden Fragen der Hardware- und Software-Architektur der Systeme erläutert.
 +Hierzu gehören auch die Vernetzung der Rechnerknoten und die E/​A-Systeme.
 +Anhand der TOP500-Liste wird die Leistungsentwicklung der vergangenen Jahre dargestellt.
 +
 +Der zweite Block befaßt sich mit der Programmierung der Systeme.
 +Nach einer allgemeinen Einführung werden die Programmierparadigmen des Nachrichtenaustausches und der Nutzung gemeinsamer Speicherbereiche eingeführt.
 +Auch moderen Ansätze, die in Fachkreisen kontrovers dikutiert werden, sollen in der Vorlesung präsentiert werden.
 +
 +Im dritten Block befassen wir uns mit der Frage, wie wir das implementierte Programm auf dem Hochleistungsrechner effizient zum Laufen bekommen.
 +Hierzu gehört zunächst die Frage, wie wir Fehler im Programm entfernen.
 +Danach befassen wir uns mit der Leistungsanalyse und der Leistungsoptimierung dieser Programme.
 +
 +Im vierten Abschnitt werden als Ausblick verschiedene Einzelaspekte des modernen Hochleistungsrechnens diskutiert werden.
 +
 +===== Zielgruppe =====
 +
 +Die Vorlesung eignet sich für Studierende der Informatik in den höheren Semestern des Bachelor, für alle Studierenden mit Nebenfach Informatik sowie Doktoranden in den Natur- und Ingenieurwissenschaften,​ die Hochleistungsrechnen als Werkzeug verwenden.
 +
 +**Voraussetzungen:​**
 +
 +Notwendige Voraussetzung für die Vorlesung:
 +  * Praktische Kenntnis einer Programmiersprache und die Fähigkeit, einfache Programme zu erstellen
 +
 +Erwünschte Vorkenntnisse:​
 +  * Kenntnis der Grundmechanismen von Betriebssystemen
 +  * Grundkenntnisse in Rechnerarchitektur
 +
 +===== Lernziel =====
 +
 +Die Teilnehmer werden in die Lage versetzt, parallele Programme mit verschiedenen Programmierkonzepten zu erstellen, zur Ausführung zu bringen und im Ablauf zu optimieren.
 +Konzepte paralleler Rechnerarchitekturen werden gelehrt.
 +Die Teilnehmer können die gewonnenen Kenntnisse auch auf modernen Arbeitsplatzrechnern mit Mehrkern-Prozessoren zur Programmierung einsetzen.
 +
 +===== Daten der Veranstaltung =====
 +
 +|| Zeit || Mo 14–16 Uhr, Do 10–12 Uhr||
 +|| Übung || Mo 16–18 Uhr  ||
 +|| Ort || [[http://​maps.google.com/​maps?​q=DKRZ,​+Bundesstra%C3%9Fe+45a,​+20146+Hamburg&​hl=de&​cd=2&​ei=BUxYS-GvKIuLOKaotbgJ&​sig2=Kv8CBjHeXm8lAVC3XxRrIQ&​ie=UTF8&​view=map&​cid=262423906154203330&​ved=0CBsQpQY&​hq=DKRZ,​+Bundesstra%C3%9Fe+45a,​+20146+Hamburg&​hnear=&​z=16&​iwloc=A|DKRZ]],​ Raum 034 ||
 +|| Beginn || 18.10.2010 ||
 +|| Mailingliste || [[http://​wr.informatik.uni-hamburg.de/​listinfo/​hr-1011|HR-1011]] ||
 +
 +===== Dozenten =====
 +
 +  * [[People:​Thomas Ludwig]]
 +  * [[People:​Michael Kuhn]]
 +  * [[People:​Alumni:​Julian Kunkel]]
 +
 +===== Zeitplan und Materialien =====
 +
 +Die in der Vorlesung dargestellten Konzepte und Mechanismen des Hochleistungsrechnens werden jeweils inhaltlich abgeschlossen in einer Vorlesungsstunde präsentiert.
 +Ein genauer und verbindlicher Zeitplan erscheint hier zu Beginn der Vorlesungszeit.
 +
 +==== Themenplan ====
 +
 +  - **Einführung**
 +    * 18.10. Einleitung {{:​teaching:​wintersemester_2010_2011:​hr-1011.pdf|Folien (bis „Programmierung mit OpenMP“)}}
 +  - **Hardware- und Software-Konzepte**
 +    * 25.10. Hardware-Architekturen
 +    * 28.10. Die TOP500-Liste
 +    * 01.11. Vernetzungskonzepte
 +    * 04.11. Hochleistungs-Eingabe/​Ausgabe
 +    * 08.11. Betriebssystemaspekte
 +  - **Programmierung**
 +    * 11.11. Parallele Programmierung (Vortragender:​ Michael Kuhn)
 +    * 15.11. Programmiermodell Nachrichtenaustausch (Vortragender:​ Michael Kuhn)
 +    * 18.11. Parallele Eingabe/​Ausgabe (Vortragender:​ Michael Kuhn)
 +    * 22.11. Führung am DKRZ
 +    * 25.11. Programmierung mit Threads
 +    * 29.11. Programmierung mit OpenMP
 +    * 03.01. Grafikkartenprogrammierung ​ ({{:​teaching:​wintersemester_2010_2011:​vl_graphik.pdf|Folien zu diesem Thema}} - Vortragender:​ Niklas Röber)
 +    * 06.01. Hybride Programmierung ({{:​teaching:​wintersemester_2010_2011:​hybird_parallelisierung-1.pdf|Folien zu diesem Thema}} - Vortragender:​ Panagiotis Adamidis)
 +  - **Programmierwerkzeuge**
 +    * 09.12. Werkzeugarchitekturen
 +    * 02.12. Leistungsanalyse ({{:​teaching:​wintersemester_2010_2011:​hr-1011-la.pdf|Folien zu diesem Thema}})
 +    * 06.12. Leistungsmodellierung ({{:​teaching:​wintersemester_2010_2011:​hr-1011-lm.pdf|Folien 6.12.-13.12.}})
 +    * 13.12. Fehlersuche
 +    * 16.12. Leistungsmessung ({{:​teaching:​wintersemester_2010_2011:​hr-10-leistungsmessung.pdf|Folien zu diesem Thema}})
 +    * 10.01. Fehlertoleranz ({{:​teaching:​wintersemester_2010_2011:​hr-1011-ft.pdf|Folien zu Fehlertoleranz,​ Lastausgleich,​ Grid/​Cloud}})
 +    * 13.01. Lastausgleich
 +  - **Aktuelle Fragestellungen**
 +    * 17.01. Energieeffizienz
 +    * 20.01. Grid- und Cloudcomputing
 +    * 24.01. Historische Betrachtungen
 +    * 27.01. Zukünftige Entwicklungen
 +
 +==== Übungen ====
 +
 +  * 18.10. Ablauf und Einführung Linux-Cluster -- {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-00.pdf|Übungsblatt 0}} {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-01.pdf|Übungsblatt 1}}
 +  * 25.10. Debugging -- {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-02.pdf|Übungsblatt 2}}
 +  * 01.11. Einführung MPI -- {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-03.pdf|Übungsblatt 3}}
 +  * 08.11. PDE-Parallelisierungsschema {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-04a.pdf|Übungsblatt 4a}}
 +  * 15.11. PDE-Parallelisierung (Jacobi) {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-04b.pdf|Übungsblatt 4b}}
 +  * 22.11. PDE-Parallelisierung (Gauß-Seidel) {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-04c.pdf|Übungsblatt 4c}}
 +  * 29.11. Zwischenbesprechung PDE-Parallelisierung (Gauß-Seidel)
 +  * 06.12. PDE-Auswertung -- {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-05.pdf|Übungsblatt 5}}
 +  * 13.12. PDE-Spurdatenanalyse -- {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-06.pdf|Übungsblatt 6}}
 +  * 20.12. //Ferien//
 +  * 27.12. //Ferien//
 +  * 03.01. POSIX-Threads -- {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-07.pdf|Übungsblatt 7}}
 +  * 10.01. OpenMP -- {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-08.pdf|Übungsblatt 8}}
 +  * 17.01. Simulation (Abgabe 29.01.) -- {{:​teaching:​wintersemester_2010_2011:​hr-1011-uebungsblatt-09.pdf|Übungsblatt 9}}
 +  * 31.01. Nachbesprechung
teaching/wintersemester_2010_2011/hochleistungsrechnen.txt · Last modified: 2018-05-09 17:25 (external edit)