Main content

This entry is from Winter semester 2021/22 and might be obsolete. No current equivalent could be found.

CS 652 — Parallel Computing
(dt. Parallelverarbeitung)

Level, degree of commitment Specialization module, compulsory elective module
Forms of teaching and learning,
Lecture (4 SWS), recitation class (2 SWS),
270 hours (90 h attendance, 180 h private study)
Credit points,
formal requirements
9 CP
Course requirement(s): Successful completion of at least 50 percent of the points from the weekly exercises as well as at least 2 presentations of the tasks.
Examination type: Oral or written examination
The grading is done with 0 to 15 points according to the examination regulations for the degree program M.Sc. Data Science.
One semester,
Regelmäßig alle 3 bis 4 Semester
Person in charge of the module's outline Prof. Dr. Rita Loogen


1. Introduction: Models/Concepts of Parallel Computing

2. Design of parallel programs

3. Memory-coupled systems: The PRAM model, PRAM algorithms: Sorting and matrix algorithms, thread-based programming, synchronization and communication via shared variables (semaphore, monitors), programming of memory-coupled multiprocessors -> The OpenMP standard

4. Message-coupled systems: Networks, Distributed Algorithms, Programming Message-Coupled Multiprocessors -> The MPI Library (Message-Passing-Interface)

5. Accelerator-based systems: GPGPU programming with CUDA

6. Alternative approaches

Qualification Goals

  • Learning and classifying different parallel programming models,
  • Comparing different methods for parallel problem solving,
  • Learning parallel programming techniques,
  • Writing parallel programs,
  • Developing and analysing parallel algorithms,
  • Evaluating parallel algorithms and programs,
  • Practicing scientific working methods (recognition, formulation, solving problems, training of abstraction skills),
  • Training oral communication skills in the exercises by practicing free speech in front of an audience and during discussion


None. The competences taught in the following module are recommended: Object-oriented Programming.


Module imported from M.Sc. Data Science.

It can be attended at FB12 in study program(s)

  • B.Sc. Computer Science
  • M.Sc. Data Science
  • M.Sc. Computer Science
  • M.Sc. Mathematics
  • M.Sc. Business Mathematics
  • LAaG Computer Science

When studying B.Sc. Computer Science, this module can be attended in the study area Compulsory Elective Modules in Computer Science.

The module is assigned to Theoretical Computer Science. Further information on eligibility can be found in the description of the study area.

Recommended Reading

  • A. Grama, A. Gupta, G. Karypis, V. Kumar: Introduction to Parallel Computing, Pearson Education, 2003.
  • M. Quinn: Parallel Programming in C with MPI and OpenMP, Mc Graw Hill 2003
  • I. Foster: Designing and Building Parallel Programs, Addison Wesley 1995
  • A. Gibbons, W. Rytter: Efficient Parallel Algorithms, Cambridge University Press 1988

Please note:

This page describes a module according to the latest valid module guide in Winter semester 2021/22. Most rules valid for a module are not covered by the examination regulations and can therefore be updated on a semesterly basis. The following versions are available in the online module guide:

The module guide contains all modules, independent of the current event offer. Please compare the current course catalogue in Marvin.

The information in this online module guide was created automatically. Legally binding is only the information in the examination regulations (Prüfungsordnung). If you notice any discrepancies or errors, we would be grateful for any advice.