Offered Courses
Current Semester (2025S)
Parallel Computing
Motivation, goals of parallel computing. Parallel algorithms, architectures, programming models, performance measurement and analysis. Problems in parallel algorithms. Introduction to MPI (Message-Passing interface), hreads and OpenMP. Task-parallel models and interfaces (Cilk). Other languages for multi-core processors.
Parallel Computing in TISS , opens an external URL in a new window
High Performance Computing
Overview of current HPC architectures and communication networks, problems, algorithms and solutions (with project/exercises); advanced MPI programming (with project/exercise), tools, performance models, libraries (with project/exercise).
High-Performance-Computing in TISS, opens an external URL in a new window
Basics of Parallel Computing
Motivation and goals of parallel computing, parallel computer architectures, programming models, performance measurement and analysis, introduction to programming paradigms such as MPI (Message Passing Interface), Pthreads, and OpenMP. Other aspects and languages for programming multi-core processors.
Basics of Parallel Computing in TISS , opens an external URL in a new window
Further Courses
Lectures offered in other semesters
Parallel Algorithmns
The course gives an introduction into the basics of scheduling theory, but will also highlight practical aspects when solving scheduling problems. The course introduces basic concepts and notation used in scheduling research. Then, selected topics are discussed in more detail, such as: shop scheduling, scheduling with parallel tasks, online scheduling, approximation algorithms in scheduling, divisible load scheduling, simulations and scheduling.
Parallel Algorithmns in TISS, opens an external URL in a new window
Advanced Multiprocessor Programming
Memory models, synchronization problems, operations and primitives, atomic operations, consensus, impossibility and universality results, locks, lock- and wait-free data structures (lists, stacks, queues,
hashtables, search structures, ...), work-stealing. Practical implementation project (C/C++ with pthreads, Java, ...)
Advanced-Multiprocessor-Programming in TISS , opens an external URL in a new window
Scientific Research and Writing
Introduction to science and the operation of the scientific community; based on a self-chosen or a given topic students practice developing a research question, performing a literature search, basic skills of scientific writing, and giving a scientific presentation
Scientific-Reasearch-And-Writing in TISS , opens an external URL in a new window
Scientific Programming with Python
- Introduction to the Python programming language
- The SciPy and NumPy ecosystem
- Data processing and plotting (Matplotlib)
- Code testing
- Reproducible and interactive data processing with IPython/Jupyter
- Introduction to solving optimization problems with Python (e.g.,
- SciPy, PuLP)
- Parallel processing in Python
- Interfaces to other programming languages (e.g., Julia)
Scientific-Programming-With-Python in TISS, opens an external URL in a new window
Competitive Programming for Programming Contests
- Programmierprobleme schnell und detailliert analysieren
- notwendige, effiziente Algorithmen zum Lösen von Programmieraufgaben kennenlernen
- selbstständig effiziente Programmiertechniken beim Erstellen einer korrekten Lösung anwenden.
Competitive Programming for Programming Contests TISS , opens an external URL in a new window