====== Seminar „Effiziente Programmierung“ ======
===== Beschreibung =====
In diesem Seminar geht es um die effiziente Programmierung im weiteren Sinne.
Dazu gehören sowohl die eigentliche Entwicklung und das Debugging aber auch der Energieverbrauch und die Laufzeit des Programms.
Dabei sollen Informationen zu den verschiedenen Themen recherchiert werden und anhand von konkreten Beispielen dargestellt werden.
Es können auch die Ergebnisse kleiner vergleichender Untersuchungen zur Auswirkung verschiedener Konstrukte und Methoden gezeigt werden.
Beachten Sie auch unsere allgemeinen organisatorischen [[:teaching:organisatorische_hinweise:seminar_proseminar#seminare|Hinweise zu Seminaren]].
===== Zielgruppe =====
Das Seminar eignet sich für Studierende der Informatik in den Diplom- und Bachelorstudiengängen.
Studierende anderer Studiengänge müssen die Anrechnung mit dem jeweiligen Prüfungsausschuss klären.
Interessierte Zuhörer sind auch herzlich willkommen.
===== Daten der Veranstaltung =====
|| Zeit || Dienstag, 10--12 Uhr ||
|| Ort || [[https://www.uni-hamburg.de/onTEAM/campus/index.html?loc=i12340438|DKRZ]], Raum 034 ||
|| Mailingliste || [[https://wr.informatik.uni-hamburg.de/listinfo/ep-1920|EP-1920]] ||
===== Dozenten =====
* [[People:Alumni:Michael Kuhn]] (Ansprechpartner)
* [[People:Hermann Lenhart]]
* [[People:Alumni:Kira Duwe]]
* [[People:Jannek Squar]]
* [[People:Anna Fuchs]]
===== Zeitplan =====
Bei einem allgemeinen Einführungstermin werden Grundlagen vermittelt und die Themen zugewiesen.
Nach der Festlegung der Themen soll der Inhalt mit dem jeweiligen Betreuer diskutiert werden.
* 15.10.
* Einführung und Themenvergabe
* 22.10.
* Rechnerraumführung
* 29.10. **Fällt aus**
* 05.11. **Fällt aus**
* 12.11.
* LLVM-Infrastruktur ((Michael Kuhn)) -- Jan Witt {{:teaching:wintersemester_2019_2020:ep-1920-witt-llvm-infrastructure-praesentation.pdf|Präsentation}} {{:teaching:wintersemester_2019_2020:ep-1920-witt-llvm-infrastructure-ausarbeitung.pdf|Ausarbeitung}}
* Compiler-Optimierungen ((Michael Kuhn)) -- Marcel Papenfuss {{:teaching:wintersemester_2019_2020:ep-1920-papenfuss-compiler-optimierungen-praesentation.pdf|Präsentation}} {{:teaching:wintersemester_2019_2020:ep-1920-papenfuss-compiler-optimierungen-ausarbeitung.pdf|Ausarbeitung}}
* 19.11.
* Optimierungen zur Compile-/Laufzeit ((Michael Kuhn)) -- Mats Schrader {{:teaching:wintersemester_2019_2020:ep-1920-schrader-optimierungen-ausarbeitung.pdf|Ausarbeitung}}
* Typisierung in Programmiersprachen ((Hermann Lenhart)) -- Leo Biegert
* 26.11.
* DIY: Compilerbau ((Jannek Squar)) -- Hauke Stieler {{ :teaching:wintersemester_2019_2020:2019_ep_stieler_compilerbau_ausarbeitung.pdf |Ausarbeitung}} {{ :teaching:wintersemester_2019_2020:ep-1920_stieler_compilerbau-sources.zip |Sources}}
* DawnCC ((Jannek Squar)) -- Anton Kollewe {{ :teaching:wintersemester_2019_2020:ep-1920-kollewe-dawncc-praesentation.pdf |Präsentation}} {{ :teaching:wintersemester_2019_2020:ep-1920-kollewe-dawncc-ausarbeitung.pdf |Ausarbeitung}}
* 03.12.
* MPI Datatypes ((Hermann Lenhart))
* MPI Topologies ((Hermann Lenhart)) -- Alena Pils {{:teaching:wintersemester_2019_2020:ep-1920-mpi_topologien_alena_pils.pdf|Präsentation}}
* 10.12.
* Libs für parallele E/A ((Kira Duwe)) -- Johannes Coym {{:teaching:wintersemester_2019_2020:ep-1920-coym-parallele_ea-praesentation.pdf|Präsentation}}
* 17.12.
* Non-volatile main memory (NVMM) Speichersysteme ((Kira Duwe)) -- Simon Oelgeschläger {{:teaching:wintersemester_2019_2020:ep-1920-oelgeschlaeger-nvmm_fs-praesentation.pdf|Präsentation}}{{:teaching:wintersemester_2019_2020:ep-1920-oelgeschlaeger-nvmm_fs-ausarbeitung.pdf|Ausarbeitung}}
* Drone CI ((Michael Kuhn))
* 07.01.
* Reproduzierbarkeit ((Michael Kuhn))
* KLEE ((Jannek Squar)) -- Luca Cielgelski {{ :teaching:wintersemester_2019_2020:ep-1920-ciegelski-klee-praesentation.pdf |Präsentation}} {{ :teaching:wintersemester_2019_2020:ep-1920-ciegelski-klee-ausarbeitung.pdf |Ausarbeitung}}
* 14.01.
* Non-functional Tests ((Anna Fuchs))
* Integration tests ((Anna Fuchs)) -- Julien Scholz
* 21.01.
* Testautomatisierung ((Anna Fuchs)) -- Jan Harder
* 28.01.
* Wormhole - neues Indexkonzept aus Hashtabelle, Präfixbaum und B+-Baum ((Kira Duwe)) -- Markus Heidrich {{:teaching:wintersemester_2019_2020:ep-1920-heidrich-wormhole-praesentation.pdf|Präsentation}}{{:teaching:wintersemester_2019_2020:ep-1920-heidrich-wormhole-ausarbeitung.pdf|Ausarbeitung}}
* ''crash'' ((Anna Fuchs)) -- Michael Straßberger
* Zeitkomplexität Registerzuteilung ((Jannek Squar))
===== Literaturhinweise =====