Parallel Computing '26: Tutorial Homepage

Professor: Sven-Bodo Scholz
Teaching Assistant: Philip Kaluđerčić
Student Assistants: Jakub, Malte, Stefan, Eskil
Short URL: https://cs.ru.nl/~pkal/pc
Further links: Official Timetable, Brightspace, Mattermost (chat)

[ICO]NameLast modifiedSizeDescription

[PARENTDIR]Parent Directory  -  
[DIR]assignments/2026-04-02 09:45 - List of Programming Assignments
[DIR]exercises/2026-04-10 17:00 - List of Exercise Sheets
[TXT]links-unix.html2026-04-09 10:17 3.3KLinks on C and UNIX

The tutorials for Parallel Computing consist of two parts:

  1. Exercise period (10.4.–1.5.), in parallel to the lectures. Every week we will publish an exercise sheet, that will be reviewed but not graded. There will be three exercise sheets in total, following the contents of the two lectures of the week.
  2. Assignment period (7.5.–29.5.), after the lectures. Here you will gather practical experience working with the technologies discussed in the lecture. Your group submissions, along with a report, will be graded, and can improve your final (passing!) grade.

Exercises

As the first few weeks will only consist of lectures, and have no tutorial sessions, we will be releasing optional exercise sheets to work on in groups of two. The exercise sheets will be uploaded publicly on this page and on Brightspace.

Our teaching assistants will review your submissions and give you feedback, but you will not receive a mark or influence your grade in any other way.

Despite this, you are encouraged to try and think about the questions on the exercise sheets, as this already constitutes a form a exam preparation, by improving and clarifying your understanding on the topics discussed in the lecture!


Assignments

After the lecture-block, all but the final lecture slots will be tutorial sessions (the final slot will be a Q&A session). Here you can work on one of the problems presented below in groups of three to four students.

We will parallelize real programs using the technologies discussed in the lecture: OpenMP, MPI and OpenCL. You are expected to at least use OpenMP and MPI (in two separate attempts, not simultaneously), whereas OpenCL is optional.

Your group can decide which of the following programs to parallelize (you are not expected to work on all of these, this is a choice for your group to make):

We will provide complete, sequential implementations that you can use as templates in your team — we recommend doing so to make it easier for us to help you and review your work. You can find links to these along with the problem descriptions.

Along with submitting your programs for review by 5.6., we will also require your group to write an report to analyze the results, documenting the tools you used (compiler versions, operating systems, etc.), various benchmarks along with a description of the methods you use to determine these and a statement on what member of your group was responsible for what part of the final result.


This is the first year where we are taking the approach to structuring the tutorials. If you have any comments, ideas, have found any mistakes or inconsistencies, please do not hesitate to reach out to me!