DE

Modul

Lab: Efficient Parallel C++ [M-INFO-103506]

Credits
6
Recurrence
Unregelmäßig
Duration
1 Semester
Language
English
Level
4
Version
1

Responsible

Organisation

  • KIT-Fakultät für Informatik

Part of

Bricks

Identifier Name LP
T-INFO-106992 Lab: Efficient Parallel C++ 6

Competence Certificate

See partial archievement.

Competence Goal

The students
- can use the methods of algorithm engineering in order to
implement and evaluate given algorithmic problems and data structures in
C++.
- recognize factors that lead to inefficient code and can, if possible, replace them with more efficient constructions.
- understand how to use the presented techniques for parallelization and to generate thread-safe codes with the given means.
- know the features of the standard library and are able to use them selectively.
- can test the codes generated by them for correctness and performance, furthermore they can represent and analyze the obtained results.

Prerequisites

See partial archievement.

Content

In this practical course students solve multiple programming tasks in C++. The main focus is on the efficient implementation and their evaluation through extensive experiments. The programming tasks
are motivated by scientific work in the field of algorithm engineering.
They cover complex algorithms as well as advanced data structures, furthermore advanced programming techniques and parallelization (thread management capabilities of the standard library).

Workload

~ 10h attendance time
~ 10h discussion/assessment of the regular solutions (with preparation)
~ 15h designing the individual final assignment
~ 25h presentation of the individual final task
~ 120h working on the tasks (implementation and evaluation)