Parallel and Distributed Programming, 5 credits

Academic year 2023/2024

  • Spring 2024, 33%, Campus

    Start date: 18 March 2024

    End date: 2 June 2024

    Application deadline: 16 October 2023

    Application code: UU-62007 Application

    Language of instruction: English

    Location: Uppsala

    Selection: Higher education credits in science and engineering (maximum 240 credits)

    Registration: 4 March 2024 – 25 March 2024

Entry requirements: 120 credits in science/engineering including Introduction to Scientific Computing or Scientific Computing I. Participation in High Performance Programming or participation in Low-level Parallel Programming. Proficiency in English equivalent to the Swedish upper secondary course English 6.


If you are not a citizen of a European Union (EU) or European Economic Area (EEA) country, or Switzerland, you are required to pay application or tuition fees. Formal exchange students will be exempted from tuition fees, as well as the application fee. Read more about fees.

Application fee: SEK 900

Tuition fee, first semester: SEK 12,083

Tuition fee, total: SEK 12,083

About the course

There is an everlasting demand for increased computer capacity and performance. High-performance computers with only one processor are expensive, and there are physical limitations that put an upper limit on the performance. These problems are solved by connecting many cheap standard-type processors in one computer and letting them work simultaneously on one task. The amount of performance gained by the use of multi-core or multi-processor computers is strongly dependent on the software algorithms and implementation. In particular, the software must be "parallelised" to run on multiple cores simultaneously.

In this course, you will learn how different types of parallel computers are built up and how they work. Parallel algorithms for fundamental computational problems are presented. Important questions related to this are if there is parallelism inherently in a particular algorithm, or if reformulation of the algorithm can increase the parallelism. A good part of the course is hands-on parallel programming using programming models such as MPI (Message Passing Interface).

More information


Department of Information Technology

hus 10, Lägerhyddsvägen 1

Box 337, 751 05 UPPSALA


Student counsellor