Springe zum Hauptinhalt
Professur Praktische Informatik
Lehrveranstaltungen
Professur Praktische Informatik 

Lehrveranstaltungen im Wintersemester 2024/2025

Nummer Veranstaltung Tag Zeit Raum Art Dozent
256010-030 561030 Multicore-Programmierung Mo 13:45 –15:15 1/204 (neu: A10.204) V Prof. Dr. G. Rünger
Dr. T. Jakobs
256010-033 (de.) Do 09:15 –10:45 1/B202 (neu: A11.202) Ü Dr. T. Jakobs
256010-031 (en.) Fr 09:15 –10:45 1/B202 (neu: A11.202) Ü Dr. T. Jakobs
256010-032 (de.) Mo 09:15 –10:45 1/B202 (neu: A11.202) Ü Dr. T. Jakobs
256010-150 561150 Funktionale Programmierung (ehem. Höhere Programmiersprachen) Mo 15:30 –17:00 1/204 (neu: A10.204) V Prof. Dr. G. Rünger
256010-152   Di 15:30 –17:00 1/273 (neu: A10.273) Ü Dr. R. Dietze
256010-151   Mi 07:30 –09:00 1/368A (neu: A10.368.1) Ü Dr. R. Dietze
256010-010 561010 Compilerbau Di 09:15 –10:45 1/208A (neu: A10.208.1) V Prof. Dr. G. Rünger
256010-011   Mi 13:45 –15:15 1/208A (neu: A10.208.1) Ü Dr. R. Dietze
256010-D000 500110 Proseminar Parallele Programmierung -- -- -- S Prof. Dr. G. Rünger
256010-D001 500070/500090 Haupt-/Forschungsseminar Praktische Informatik -- -- -- S Prof. Dr. G. Rünger
256010-D002 500170/523010 Forschungspraktikum Praktische Informatik / Praktikum Forschungsschwerpunkt Parallele, verteilte Systeme -- -- -- P Prof. Dr. G. Rünger
(V: Vorlesung, Ü: Übung, S: Seminar, P: Praktikum)

Vorlesungen im Wintersemester

Funktionale Programmierung/Höhere Programmiersprachen

Die Vorlesung behandelt praktische und theoretische Konzepte und Methoden funktionaler Programmiersprachen sowie eine Einführung in die funktionale Programmierung anhand der Programmiersprache Haskell. Schwerpunkte sind funktionale Datenstrukturen, Typensysteme und Auswertungsstrategien.

Compilerbau

Die Vorlesung stellt Konzepte und Techniken des Compilerbaus vor, die für die Entwicklung eines Compilers notwendig sind. Dabei werden alle konzeptionellen Phasen eines Compilers von der lexikalischen Analyse bis hin zur Codegenerierung angesprochen. Darüber hinaus sollen Techniken zur effizienten automatisierten Analyse und Bearbeitung hierarchisch strukturierter Dokumente erlernt werden.

Multicore-Programmierung

Die Inhalte der Vorelsung umfassen eine Einführung in die Architektur von Multicore-Prozessoren, Programmiermodelle zur Multicore-Programmierung und die Programmierung mit Threads. Zur Thread-Programmierung werden verschiedene Sprach- und Bibliothekansätze vorgestellt.

Vorlesungen im Sommersemester

Parallele Programmierung

Die Inhalte der Vorlesung umfassen eine Übersicht über die Architektur von Parallelrechnern mit einem besonderen Schwerpunkt auf Verbindungsnetzwerken, parallele Leistungsmaße und Laufzeitanalyse, Message-passing Programmierung und Kommunikationsmuster.

Optimierung im Compilerbau

Die Vorlesung beschäftigt sich mit der Codeerzeugung (Synthesephase) und damit verbundenen Optimierungen des Compilerbaus. Im Einzelnen werden die folgenden Themengebiete behandelt: Erzeugung von 3-Adress-Code aus dem Ableitungsbaum, insbesondere für Felder; Erzeugung von Assemblercode; Registerverteilung; Datenflussanalyse; Optimierende Transformationen zur Verbesserung des Programmverhaltens; Daten-abhängigkeitsanalysen; Programmtransformationen für Felder.

Paralleles wissenschaftliches Rechnen

Das Modul befasst sich mit Anwendungen und Algorithmen des wissenschaftlichen Rechnens und deren effizienter Realisierung auf modernen Parallelrechnern. Vorgestellt werden einzelne Algorithmen der Numerik und spezielle Applikationen. Ebenso werden grundlegende Techniken zur Unterstützung der parallelen Programmierung besprochen.

Weiteres Lehrangebot

Proseminar Parallele Programmierung

Das Proseminar Parallele Programmierung behandelt grundlegende Themen zu parallelen Algorithmen und deren effizienter Umsetzung auf verschiedenen Parallelrechnerarchitekturen. Es wird im Sommer- und im Wintersemester angeboten.

Haupt-/Forschungsseminar

Es findet in jedem Semester ein Haupt- und Forschungsseminar statt, im Wintersemester in der Regel zum Themenbereich Parallele und Multicore-Programmierung, im Sommersemester meist zum Themenkomplex Compilerbau.

Praktikum Parallele Programmierung

Im Praktikum Parallele Programmierung werden ausgewählte Algorithmen und Anwendungen aus dem Bereich des wissenschaftlichen Rechnens auf modernen parallelen Systemen realisiert. Die Aufgaben umfassen Programmierung für gemeinsamen Speicher (z. B. mit OpenMP) oder für verteilten Speicher (z. B. mit MPI) sowie Programmierung für Grafikprozessoren (z. B. mit CUDA). Das Praktikum wird in jedem Semester angeboten.

Abschlussarbeiten

Bachelor- und Masterarbeiten werden jederzeit angeboten. Diese bieten die Möglichkeit, ein Thema aus dem Forschungsumfeld der Professur näher zu vertiefen.