EN

Modul

Praktikum: Effizientes paralleles C++ [M-INFO-103506]

Leistungspunkte
6
Turnus
Unregelmäßig
Dauer
1 Semester
Sprache
Englisch
Level
4
Version
1

Verantwortung

Einrichtung

  • KIT-Fakultät für Informatik

Bestandteil von

Teilleistungen

Identifier Name LP
T-INFO-106992 Praktikum: Effizientes paralleles C++ 6

Erfolgskontrolle(n)

Siehe Teilleistung.

Qualifikationsziele

Die Studierenden

 - können die Methoden des Algorithm Engineering verwenden, um

gegebene algorithmische Probleme und Datenstrukturen in C++ zu    implementieren und zu evaluieren.

 - erkennen Faktoren, die zu ineffizientem Code führen, und können diese, wenn möglich, durch effizientere Konstruktionen ersetzen.

- verstehen es, die vorgestellten Techniken zur Parallelisierung einzusetzen und mit den gegebenen Mitteln threadsichere Codes zu erzeugen.

 - kennen die Möglichkeiten der Standardbibliothek und können diese    gezielt einsetzen.

 - können die von ihnen erzeugten Codes auf Korrektheit und Performance testen, außerdem können sie die erzielten Ergebnisse darstellen und analysieren.

Voraussetzungen

Siehe Teilleistung.

Inhalt

Im Praktikum implementieren Studenten vielseitige Programmier-Aufgaben in C++. Hierbei liegt das Hauptaugenmerk darauf, effiziente Codes zu erarbeiten und diese durch umfangreiche Experimente zu evaluieren. Die gestellten Aufgaben sind motiviert durch die wissenschaftliche Arbeit auf dem Gebiet des Algorithm Engineering. Sie decken sowohl komplexere Algorithmen als auch fortgeschrittene Datenstrukturen ab, des weiteren fortgeschrittene Techniken wie Templates (compile Zeit Optimierungen) und Parallelisierung (neue Thread Management Möglichkeiten der STD).

Arbeitsaufwand

~  10h  Präsenzzeit

~  10h  Nachbesprechung/Bewertung der regulären Lösungen (mit  Vorbereitung)

~  15h  Entwerfen der individuellen Abschlussaufgabe

~  25h  Präsentation der individuellen Abschlussaufgabe

~ 120h Bearbeitung der Aufgaben (Implementieren und Evaluieren)