Sommersemester 2019

Algorithmen und Datenstrukturen

Die Teilnehmer/innen lernen grundlegende Algorithmen und Datenstrukturen der Informatik wie Such- und Sortierverfahren, rekursive Algorithmen, Bäume, Hashverfahren etc. kennen. Dabei werden neben algorithmischen Ideen verschiedene Techniken für die Analyse des Zeitbedarfs und den Nachweis der Korrektheit vermittelt. Daneben erweitern die Teilnehmer/innen ihre Programmierkenntnisse.


In den begleitenden Übungen sammeln die Teilnehmer/innen weitere Programmiererfahrungen und
erwerben Fertigkeiten in der Algorithmenanalyse sowie im Entwickeln eigener algorithmischer Ideen.


Teilnehmerkreis:
Studierende der Informatik im 2. Semester sowie andere Interessierte.


Termine:
• Vorlesung
Montag, von 14:15 - 15:45 Uhr, Raum 1603
Dozentin: Prof. Dr. Claudia Fohry
Die erste Vorlesung findet am 29.04.19 statt.
• Kleingruppenübungen
Dienstag, 12:15 - 13:45 Uhr, Raum -1607, Prof. Dr. Claudia Fohry (ab 30.04.19)
Dienstag, 16:00 - 17:30 Uhr, Raum 1114, M.Sc. Jonas Posner (ab 30.04.19)
Mittwoch, 10:00 - 11:30 Uhr, Raum -1607, M.Sc. Jonas Posner (ab 08.05.19)


Umfang: 4 SWS (6 CP)


Für weitere Auskünfte stehen Ihnen Frau Prof. Dr. Claudia Fohry (fohry@uni-kassel.de) und M.Sc. Jonas Posner (jonas.posner@uni-kassel.de) gern zur Verfügung.

 

Einführung in die Parallelverarbeitung

Die Veranstaltung beginnt mit einer Einführung zu Gegenstand, Anwendungsgebieten und Grundbegriffen des parallelen Rechnens. Wir behandeln Entwurfstechniken für parallele Algorithmen (z.B. paralleles Divide-and-Conquer) sowie allgemeine Anforderungen an den Entwurf effizienter Programme (z.B. Cacheoptimierung). Anhand von drei exemplarischen Programmiersystemen werden dann im Hauptteil Grundkenntnisse zur parallelen Programmierung vermittelt:


• OpenMP für Rechner mit gemeinsamem Speicher,
• “APGAS für Java“ für Rechner mit verteiltem bzw. hybridem Speicher und
• CUDA für GPUs.


In die Veranstaltung sind zwei Praktikumsabschnitte integriert, in denen die Teilnehmer in Zweierteams Programmieraufgaben lösen. Die Ergebnisse werden anschließend in Prüfungsgesprächen vorgestellt und bilden die Basis für die Bewertung der Veranstaltung.


Die Veranstaltung ersetzt die bisherigen Veranstaltungen PV1 und P V2.


Teilnehmerkreis:
Studierende im Master Informatik nach PO 2010 oder 2018. Für Studierende nach PO 2018 kann die Veranstaltung sowohl im Wahlpflichtbereich als auch in die Schwerpunkte Softwareentwicklung (als Pflichtveranstaltung) und Umweltinformatik (als Wahlpflichtveranstaltung) eingebracht werden.


Termine:
Montag 12:15 - 13:45 Uhr im Raum -1606
Mittwoch 12:15 - 13:45 Uhr im Raum -1607
Die erste Vorlesung findet am Mittwoch, 17.04.19 statt.
Achtung! Ausnahmsweise findet die erste Vorlesung am 17.04.19 in Raum 0425 statt!


Umfang:
Master 4 SWS (6 CP)


Für weitere Auskünfte stehen Ihnen Frau Prof. Dr. Claudia Fohry (fohry@uni-kassel.de) und Herr M.Sc. Jonas Posner (jonas.posner@uni-kassel.de) gern zur Verfügung.

Parallele Algorithmen

Die Veranstaltung behandelt eine Auswahl paralleler Algorithmen für verschiedene Probleme und Architekturklassen. Zunächst lernen wir anhand des Modells der Parallel Random Access Machine grundlegende Entwurfstechniken und Techniken für die Laufzeitabschätzung kennen. Danach betrachten wir Algorithmen für Mehrkernprozessoren und Cluster, die sich mittels OpenMP bzw. MPI umsetzen lassen. Je nach Vorkenntnissen und Interesse der Teilnehmer ist die Umsetzung ebenfalls Bestandteil der Veranstaltung. Die betrachteten Algorithmen reichen von regulären Algorithmen für Matrixberechnungen über parallele Optimierungsverfahren bis zu parallelen Graphalgorithmen. Abschließend werden Algorithmen für spezielle Szenarien behandelt: fehlertolerante parallele Algorithmen sowie effiziente Algorithmen für Speicherhierarchien.


Die Bewertung der Veranstaltung erfolgt auf Basis einer Projektarbeit mit abschließendem Prüfungsgespräch. Schwerpunkt des Projekts ist die eigene Entwicklung effizienter Algorithmen. Diese werden bezüglich ihrer Laufzeit analysiert sowie, bei entsprechenden Vorkenntnissen der Teilnehmer, implementiert und experimentell bewertet.


Die Veranstaltung ergänzt die Veranstaltungen “Einführung in die Parallelverarbeitung“ (Bachelor) und “Parallele Programmierung“ (Master), kann aber auch ohne Vorkenntnisse in paralleler Programmierung belegt werden.


Teilnehmerkreis:
Studierende im Master Informatik nach PO 2010 oder 2018. Für Studierende nach PO 2018 kann die Veranstaltung sowohl im Wahlpflichtbereich als auch in die Schwerpunkte Softwareentwicklung (als Pflichtveranstaltung) und Umweltinformatik (als Wahlpflichtveranstaltung) eingebracht werden.


Termine:

Mittwoch 8:30 - 10:00 Uhr in Raum 2307A
Donnerstag 08:30 - 10:00 Uhr in Raum 2307A
Die erste Vorlesung findet am 18.04.19 statt.


Umfang:
Master 4 SWS (6 CP)


Für weitere Auskünfte steht Ihnen Frau Prof. Dr. Claudia Fohry (fohry@uni-kassel.de) gern zur Verfügung