High Performance Parallel Programming

Course
DIT431
Master’s level
7.5 credits (ECTS)
Study pace
50%
Time
Day
Location
Göteborg
Language
English
Duration
-
Part of semester
Quarter 1 to 2

About

This course looks at parallel programming models, efficient programming methodologies and performance tools with the objective of developing highly efficient parallel programs.
The course consists of a set of lectures and laboratory sessions.
The lectures start with an overview of parallel computer architectures and parallel programming models and paradigms. An important part of the discussion are mechanisms for synchronization and data exchange. Next, performance analysis of parallel programs is covered.
The course proceeds with a discussion of tools and techniques for developing parallel programs in shared address spaces. This section covers popular programming environments such as pthreads and OpenMP.
Next the course discusses the development of parallel programs for distributed address space. The focus in this part is on the Message Passing Interface (MPI). Finally, we discuss programming approaches for executing applications on accelerators such as GPUs. This part introduces the CUDA (Compute Unified Device Architecture) programming environment.
The lectures are complemented with a set of laboratory sessions in which participants explore the topics introduced in the lectures. During the lab sessions, participants parallelize sample programs over a variety of parallel architectures, and use performance analysis tools to detect and remove bottlenecks in the parallel implementations of the programs.

This course is open to

Exchange students at the Department of computer science and Engineering and exchange students at university-wide agreements. Please contact your international coordinator the University of Gothenburg if you need to know more.

Requirements

To be eligible for the course, students should have successfully completed courses corresponding to 105 credits within the subject of Computer Science, Mathematics, Software Engineering, or equivalent.
Including a 7.5 credits course in machine-oriented programming (e.g., DIT151 Machine Oriented Programming, or equivalent).

Applicants must prove knowledge of English: English 6/English B or the equivalent level of an internationally recognized test, for example TOEFL, IELTS.

English proficiency

If you have questions about English proficiency requirements, please contact your international coordinator at the University of Gothenburg.

Application

Do you want to apply for exchange studies at the University of Gothenburg?

Read more on the page Apply for exchange studies