teaching:sommersemester_2016:hochleistungs-ein_ausgabe

Differences

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

Link to this comparison view

teaching:sommersemester_2016:hochleistungs-ein_ausgabe [2018-01-24 17:13] (current)
Line 1: Line 1:
 +====== Vorlesung „Hochleistungs-Ein-/​Ausgabe“ ======
  
 +===== Beschreibung =====
 +
 +Hochleistungsrechnen ist eine wichtige Technik der Informatik, mit deren Hilfe in den Natur- und Ingenieurwissenschaften neue Erkenntnisse gewonnen werden.
 +Insbesondere die 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.
 +
 +Ein zunehmend wichtiger Aspekt ist dabei die Ein-/​Ausgabe von Daten, die einen signifikanten Einfluss auf die Gesamtleistung der Anwendungen haben kann.
 +Die unterschiedlichen Entwicklungsgeschwindigkeiten der Prozessoren auf der einen Seite und der Speicherhardware auf der anderen Seite führen zu einem Ungleichgewicht der Leistungsfähigkeit dieser Komponenten.
 +Gepaart mit den immer größer werdenden Datenmengen (Big Data) ist es notwendig sich intensiv mit der Hochleistungs-Ein-/​Ausgabe zu beschäftigen um künftigen Anforderungen gerecht werden zu können.
 +
 +In der Vorlesung werden die Grundlagen der Ein-/​Ausgabe im Hochleistungsrechnen gelehrt; die Übungen dienen der praktischen Anwendung und Umsetzung der erworbenen Kenntnisse.
 +
 +Im Rahmen der Vorlesung wird der komplette Ein-/​Ausgabe-Stack betrachtet:
 +Speichergeräte und -netze (Festplatten,​ Solid-State-Laufwerke,​ Storage Area Networks etc.), lokale und verteile Dateisysteme (im Kernel und auf Anwendungsebene,​ neuartige Konzepte wie Snapshots und Deduplizierung) und die darauf aufsetzenden E/​A-Schnittstellen (POSIX, MPI-IO, NetCDF, ADIOS).
 +Zusätzlich werden Gründe und Lösungsansätze für Leistungsprobleme diskutiert und alternative Ansätze für die Ein-/​Ausgabe (wie z.B. Cloud-Schnittstellen) vorgestellt.
 +Beispiele und Probleme werden im Kontext realer wissenschaftlicher Anwendungen aus dem Bereich der Erdsystemforschung motiviert.
 +===== Zielgruppe =====
 +
 +Die Vorlesung eignet sich für Studierende der Informatik und Bioinformatik im Masterstudiengang.
 +
 +Empfohlene Vorkenntnisse:​
 +  * Praktische Kenntnis einer Programmiersprache und die Fähigkeit, einfache Programme zu erstellen
 +  * Kenntnis der Grundmechanismen von Betriebssystemen
 +  * Grundkenntnisse des Hochleistungsrechnens
 +
 +===== Lernziel =====
 +
 +Die Teilnehmer werden in die Lage versetzt, die Ein-/​Ausgabe paralleler Programme mit verschiedenen Programmierkonzepten umzusetzen und im Ablauf zu optimieren.
 +
 +===== Daten der Veranstaltung =====
 +
 +|| Zeit || Freitag 14–16 Uhr ||
 +|| Übung || Freitag 12–14 Uhr ||
 +|| Ort || [[https://​www.uni-hamburg.de/​onTEAM/​campus/​index.html?​loc=i12340438|DKRZ]],​ Raum 034 ||
 +|| Mailingliste || [[https://​wr.informatik.uni-hamburg.de/​listinfo/​hea-16|HEA-16]] ||
 +
 +===== Dozenten =====
 +
 +  * [[People:​Michael Kuhn]] (Ansprechpartner)
 +
 +===== Zeitplan und Materialien =====
 +
 +
 +==== Themenplan ====
 +
 +  * 08.04. Speichergeräte und -verbünde {{:​teaching:​sommersemester_2016:​hea-16-speicher.pdf|Folien}}
 +  * 15.04. Dateisysteme (Übung in Raum 023) {{:​teaching:​sommersemester_2016:​hea-16-dateisysteme.pdf|Folien}}
 +  * 22.04. Moderne Dateisysteme {{:​teaching:​sommersemester_2016:​hea-16-moderne-dateisysteme.pdf|Folien}}
 +  * 29.04. Parallele verteilte Dateisysteme {{:​teaching:​sommersemester_2016:​hea-16-parallele-verteilte-dateisysteme.pdf|Folien}}
 +  * 06.05. OrangeFS {{:​teaching:​sommersemester_2016:​hea-16-orangefs.pdf|Folien}}
 +  * 13.05. MPI-IO {{:​teaching:​sommersemester_2016:​hea-16-mpi-io.pdf|Folien}}
 +  * 27.05. Bibliotheken {{:​teaching:​sommersemester_2016:​hea-16-bibliotheken.pdf|Folien}}
 +  * 03.06. Optimierungen {{:​teaching:​sommersemester_2016:​hea-16-optimierungen.pdf|Folien}}
 +  * 10.06. Leistungsanalyse {{:​teaching:​sommersemester_2016:​hea-16-leistungsanalyse.pdf|Folien}}
 +  * 17.06. Grid, Cloud und Peer to Peer {{:​teaching:​sommersemester_2016:​hea-16-gridcloudp2p.pdf|Folien}}
 +  * 24.06. Datenreduktion {{:​teaching:​sommersemester_2016:​hea-16-datenreduktion.pdf|Folien}}
 +  * 01.07. Zukünftige Entwicklungen {{:​teaching:​sommersemester_2016:​hea-16-zukuenftige_entwicklungen.pdf|Folien}}
 +  * 08.07. Aktuelle Forschungsprojekte
 +    * {{:​teaching:​sommersemester_2016:​hea-16-fuchs-kompression-lustre.pdf|Folien (Kompression in Lustre)}}
 +    * {{:​teaching:​sommersemester_2016:​hea-16-alforov-climate-science.pdf|Folien (HPC in Scientific Computing and Beyond: Climate Use Case)}}
 +    * {{:​teaching:​sommersemester_2016:​hea-16-luettgau-io-hsm-middleware.pdf|Folien (Transparent I/O Optimization,​ Hierarchical-Storage Simulation, Earth-System-Data Middleware)}}
 +  * 15.07. Nachbesprechung
 +
 +==== Übungen ====
 +
 +Das {{:​teaching:​sommersemester_2016:​survey.py.gz|Rückmeldungsscript}} kann genutzt werden, um komfortabel eine automatisch auswertbare Rückmeldung zu erzeugen.
 +
 +  * 08.04. Einführung {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-00.pdf|Übungsblatt 0}} {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-01.pdf|Übungsblatt 1}} {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-01-materialien.tar.gz|Materialien}}
 +    * Abgabe: 13.04. 08:00
 +    * Zusätzliche Informationen:​ {{:​teaching:​sommersemester_2016:​hea-16-uebung1.pdf|Folien}}
 +  * 13.04. E/​A-Werkzeuge {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-02.pdf|Übungsblatt 2}} {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-02-materialien.tar.gz|Materialien}}
 +    * Abgabe: 20.04. 08:00
 +    * Zusätzliche Informationen:​ {{:​teaching:​sommersemester_2016:​hea-16-uebung2.pdf|Folien}}
 +  * 20.04. FUSE-Dateisystem {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-03.pdf|Übungsblatt 3}} {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-03-materialien.tar.gz|Materialien}}
 +    * Abgabe: 27.04. 08:00
 +    * Zusätzliche Informationen:​ {{:​teaching:​sommersemester_2016:​hea-16-uebung3.pdf|Folien}}
 +  * 27.04. Memory-FUSE-Dateisystem {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-04.pdf|Übungsblatt 4}} {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-04-materialien.tar.gz|Materialien}}
 +    * Abgabe: 11.05. 08:00 (Zwischenabgabe Designdokument:​ 04.05. 08:00)
 +    * Zusätzliche Informationen:​ {{:​teaching:​sommersemester_2016:​hea-16-uebung4.pdf|Folien}}
 +  * 11.05. Design eines persistenten Dateisystems {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-05.pdf|Übungsblatt 5}}
 +    * Abgabe: 25.05. 08:00
 +  * 11.05. Implementierung eines persistenten Dateisystems {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-06.pdf|Übungsblatt 6}} {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-06-materialien.tar.gz|Materialien}}
 +    * Abgabe: <​del>​08.06.</​del>​ 15.06. 08:00
 +  * 15.06. Nicht-zusammenhängende und kollektive E/A {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-07.pdf|Übungsblatt 7}} {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-07-materialien.tar.gz|Materialien}}
 +    * Abgabe: 22.06. 08:00
 +  * 22.06. OrangeFS und Darshan {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-08.pdf|Übungsblatt 8}}
 +    * Abgabe: 29.06. 08:00
 +  * 29.06. Kompression {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-09.pdf|Übungsblatt 9}} {{:​teaching:​sommersemester_2016:​hea-16-uebungsblatt-09-materialien.tar.gz|Materialien}}
 +    * Abgabe: 06.07. 08:00
 +===== Links =====
 +
 +  * http://​c.learncodethehardway.org/​book/​
 +  * https://​github.com/​libfuse/​libfuse
 +  * https://​pthree.org/​2012/​04/​17/​install-zfs-on-debian-gnulinux/​
 +  * http://​events.linuxfoundation.org/​events/​vault/​program/​slides
 +  * [[http://​www.snia.org/​sites/​default/​files/​SDC15_presentations/​smr/​AlbertChen_JimMalina_Host_Managed_SMR_revision5.pdf|http://​www.snia.org/​…/​AlbertChen_JimMalina_Host_Managed_SMR_revision5.pdf]]
 +  * [[http://​www.snia.org/​sites/​default/​files/​SDC15_presentations/​dist_sys/​EricBarton_DAOS_Architecture_Extreme_Scale.pdf|http://​www.snia.org/​…/​EricBarton_DAOS_Architecture_Extreme_Scale.pdf]]
 +===== Literatur =====
 +
 +  * High Performance Parallel I/O (Prabhat, Quincey Koziol); October 23, 2014 by Chapman and Hall/CRC; ISBN: 9781466582347
 +  * Understanding the Linux Kernel (Daniel P. Bovet, Marco Cesati)
 +  * Professional Linux Kernel Architecture (Wolfgang Maurer)
teaching/sommersemester_2016/hochleistungs-ein_ausgabe.txt · Last modified: 2018-01-24 17:13 (external edit)