Modul
Lab: Efficient Parallel C++ [M-INFO-103506]
Credits
6Recurrence
UnregelmäßigDuration
1 SemesterLanguage
EnglishLevel
4Version
1Responsible
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)