teaching:wintersemester_2011_2012:hochleistungsrechnen

Differences

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

Link to this comparison view

teaching:wintersemester_2011_2012: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 || Montag und Mittwoch, 10--12 Uhr ||
 +|| Übung || Mittwoch, 12--14 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 || 17. Oktober 2011 ||
 +|| Mailingliste || [[http://​wr.informatik.uni-hamburg.de/​listinfo/​hr-1112|HR-1112]] ||
 +
 +===== Dozenten =====
 +
 +  * [[People:​Thomas Ludwig]]
 +  * [[People:​Michael Kuhn]]
 +  * [[People:​Alumni:​Julian Kunkel]]
 +  * [[People:​Hermann Lenhart]]
 +
 +===== 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 ====
 +
 +  * {{:​teaching:​wintersemester_2011_2012:​hr-1112.pdf|Folien}} für alle Termine
 +
 +  * 17.10. Einleitung
 +  * 19.10. Hardware-Architekturen
 +  * 24.10. Die TOP500-Liste
 +  * 26.10. Betriebssystemaspekte
 +  * 31.10. Leistungsoptimierung sequentieller Anwendungen
 +  * 02.11. Parallele Programmierung
 +  * 07.11. Programmierung mit POSIX-Threads (Vortragender:​ Michael Kuhn)
 +  * 09.11. Programmierung mit OpenMP
 +  * 14.11. Vernetzungskonzepte (Vortragender:​ Michael Kuhn)
 +  * 16.11. Programmiermodell Nachrichtenaustausch (Vortragender:​ Julian Kunkel)
 +  * 21.11. Leistungsanalyse
 +  * 23.11. Leistungsmodellierung
 +  * 28.11. Werkzeugarchitekturen
 +  * 30.11. Fehlersuche (Vortragender:​ Michael Kuhn)
 +  * 05.12. Leistungsmessung
 +  * 07.12. Lastausgleich
 +  * 12.12. Hochleistungs-Eingabe/​Ausgabe
 +  * 14.12. Grafikkartenprogrammierung
 +  * 19.12. Parallele Eingabe/​Ausgabe
 +  * 21.12. Hybride Programmierung
 +  * 09.01. Fehlertoleranz
 +  * 11.01. Gast-Vortrag
 +  * 16.01. Grid- und Cloudcomputing
 +  * 18.01. Energieeffizienz
 +  * 23.01. Historische Betrachtungen
 +  * 25.01. Zukünftige Entwicklungen
 +  * 30.01. Prüfung
 +
 +==== Übungen ====
 +
 +  * 17.10. Ablauf und Einführung Linux-Cluster -- {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-00.pdf|Übungsblatt 0}} {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-01.pdf|Übungsblatt 1}}
 +  * 24.10. Debugging -- {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-02.pdf|Übungsblatt 2}}
 +  * 31.10. Leistungsoptimierung sequentieller Anwendungen -- {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-03.pdf|Übungsblatt 3}}
 +  * 07.11. POSIX-Threads -- {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-04.pdf|Übungsblatt 4}}
 +  * 14.11. OpenMP -- {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-05.pdf|Übungsblatt 5}}
 +  * 21.11. Einführung MPI -- {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-06.pdf|Übungsblatt 6}}
 +  * 28.11. PDE-Parallelisierungsschema -- {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-07.pdf|Übungsblatt 7}}
 +  * 05.12. PDE-Parallelisierung (Jacobi) -- {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-08.pdf|Übungsblatt 8}}
 +  * 12.12. PDE-Parallelisierung (Gauß-Seidel) -- {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-09.pdf|Übungsblatt 9}}
 +  * 19.12. Zwischenbesprechung PDE-Parallelisierung (Gauß-Seidel)
 +  * 09.01. PDE-Auswertung {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-10.pdf|Übungsblatt 10}}
 +  * 16.01. PDE-Spurdatenanalyse -- {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-11.pdf|Übungsblatt 11}}
 +  * 23.01. Simulation -- {{:​teaching:​wintersemester_2011_2012:​hr-1112-uebungsblatt-12.pdf|Übungsblatt 12}}
teaching/wintersemester_2011_2012/hochleistungsrechnen.txt · Last modified: 2018-05-09 17:25 (external edit)