nl en

High Performance Computing I


Admission requirements

Recommended prior knowledge

Proficiency in C/C++, Computer Architectures and Compiler Construction.


This course provides a robust introduction to the world of High Performance Computing (HPC). Starting with a review of trends in supercomputer architectures, the course covers distributed computing, shared memory programming, and GPU programming and optimization. We conclude with an exploration of current research topics, such as auto-tuning, mixed-precision computing, and the intersection of HPC and AI.

Course objectives

The goal is to provide students with a comprehensive presentation of the foundations of modern HPC, readying students for meaningful contributions to this rapidly evolving field.


The most recent timetable can be found at the Computer Science (MSc) student website.

You will find the timetables for all courses and degree programmes of Leiden University in the tool MyTimetable (login). Any teaching activities that you have sucessfully registered for in MyStudyMap will automatically be displayed in MyTimeTable. Any timetables that you add manually, will be saved and automatically displayed the next time you sign in.

MyTimetable allows you to integrate your timetable with your calendar apps such as Outlook, Google Calendar, Apple Calendar and other calendar apps on your smartphone. Any timetable changes will be automatically synced with your calendar. If you wish, you can also receive an email notification of the change. You can turn notifications on in ‘Settings’ (after login).

For more information, watch the video or go the the 'help-page' in MyTimetable. Please note: Joint Degree students Leiden/Delft have to merge their two different timetables into one. This video explains how to do this.

Mode of instruction

  • Lectures

Course load

Total hours of study: 168 hrs. (= 6 EC)
Lectures: 24 hrs.
Practical work: 72 hrs.
Self-study: 72 hrs.

Assessment method

  • Exam

  • Programming assignment in C/C++

The exam counts for 60% and the programming assignment for 40% of the final mark.

Both for the exam and the programming assignment at least a 5.0 must be obtained (and the overall average mark must be at least 5.5). Students can be offered a resit opportunity for the programming assignment, in which case at most a 6.0 for the assignment can be achieved. A non-completed assignment is graded as 0.

The teacher will inform the students how the inspection of and follow-up discussion of the exams will take place.

Reading list

The course does not follow any specific text book. Recommended reading materials (research papers, etc.) will be announced on Brightspace.


Every student has to register for courses with the enrollment tool MyStudyMap. There are two registration periods per year: registration for the fall semester opens in July and registration for the spring semester opens in December. Please see this page for more information.

Please note that it is compulsory to both preregister and confirm your participation for every exam and retake. Not being registered for a course means that you are not allowed to participate in the final exam of the course. Confirming your exam participation is possible until ten days before the exam.

Extensive FAQ's on MyStudymap can be found here.


Lecturer: dr. Ben van Werkhoven
See also: Course website (to be announced)