Proseminar „Effiziente Programmierung“

Beschreibung

In diesem Proseminar 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 Hinweise zu Proseminaren.

Zielgruppe

Das Projekt 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 Donnerstag, 10–12 Uhr
Ort DKRZ, Raum 034
Mailingliste EP-18

Dozenten

Themen

  • Build-Systeme 1)
  • Vektorisierung 2)
  • Impact of volatile variables on performance 3)
  • Ein-/Ausgabe 4)

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.

  • 05.04. Einführung
  • 12.04. (Raum 023) Rechnerraumführung
  • 19.04. Fällt aus
  • 26.04.
    • Compiler – Marc Claßen 5)
    • Typisierung – Thomas Schnieders Folien 6)
  • 03.05.
    • Speicherverwaltung 7)
    • Debugging – Ahmad Shallouf 8)
  • 17.05.
    • Valgrind – Niclas Schroeter Folien 9)
    • Statische Analyse 10)
  • 31.05.
    • Compiler-Optimierungen – Leon Ahmadi-Moghaddam 11)
    • Tests – Harald Mechelke 12)
  • 07.06.
    • Kompression – Marvin Ahmadi-Moghaddam 13)
    • Scripting – Tom Schmolzi 14)
  • 14.06.
    • Datenreduktion – Kilian Bachmann 15)
    • Mixed-Language-Programming – Polina Rajko 16)
  • 21.06. (Raum 023)
    • Modularität – Levi Bautz 17)
    • Energieeffizienz – Thanh Le 18)
  • 28.06.
    • Visualisierung – Pascal Madaus 19)
  • 05.07.
    • Performance counters and profiling tools – Enzo Schröder 20)
    • Performance-Analyse mit dem Roofline Model – Alexandra Lemke 21)
  • 12.07.
    • Cache usage/blocking – Kevin Friedrich 22)

Literaturhinweise

1) , 2) , 4) , 6) , 9) , 14) , 18)
Michael Kuhn
3) , 7) , 8) , 12) , 20) , 22)
Nabeeh Jumah
5) , 13) , 15) , 19)
Anastasiia Novikova
10) , 11) , 16) , 17) , 21)
Jannek Squar