Studiegids

nl en

High Performance Computing

Vak
2024-2025

Admission requirements

Recommended prior knowledge

Proficiency in C/C++, understanding of modern computer architectures, command line environments, secure shell (SSH).

Description

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

By the end of the course students will be able to:

  • Understand the design principles that underpin the computer architecture of supercomputing systems

  • Understand the basic concepts of parallel programming, such as different programming models, data versus task parallelism, static versus dynamic work distribution

  • Analyze computational problems to evaluate opportunities for parallelism and constraints for load balancing

  • Evaluate and analyze the performance and correctness of parallel applications

  • Create parallel applications from sequential programs using distributed computing and GPU programming models

  • Apply advanced optimization techniques, such as automatic performance tuning and mixed-precision techniques, for improving the performance of parallel applications

Timetable

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

In MyTimetable, you can find all course and programme schedules, allowing you to create your personal timetable. Activities for which you have enrolled via MyStudyMap will automatically appear in your timetable.

Additionally, you can easily link MyTimetable to a calendar app on your phone, and schedule changes will be automatically updated in your calendar. You can also choose to receive email notifications about schedule changes. You can enable notifications in Settings after logging in.

Questions? Watch the video, read the instructions, or contact the ISSC helpdesk.

Note: Joint Degree students from Leiden/Delft need to combine information from both the Leiden and Delft MyTimetables to see a complete schedule. This video explains how to do it.

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, closed book

  • Programming assignment in C/C++ (Individual)

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.5 must be obtained. 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.

Registration

As a student, you are responsible for enrolling on time through MyStudyMap.

In this short video, you can see step-by-step how to enrol for courses in MyStudyMap.
Extensive information about the operation of MyStudyMap can be found here.

There are two enrolment periods per year:

  • Enrolment for the fall opens in July

  • Enrolment for the spring opens in December

See this page for more information about deadlines and enrolling for courses and exams.

Note:

  • It is mandatory to enrol for all activities of a course that you are going to follow.

  • Your enrolment is only complete when you submit your course planning in the ‘Ready for enrolment’ tab by clicking ‘Send’.

  • Not being enrolled for an exam/resit means that you are not allowed to participate in the exam/resit.

Contact

Lecturer: dr. Ben van Werkhoven

Remarks

Software
Starting from the 2024/2025 academic year, the Faculty of Science will use the software distribution platform Academic Software. Through this platform, you can access the software needed for specific courses in your studies. For some software, your laptop must meet certain system requirements, which will be specified with the software. It is important to install the software before the start of the course. More information about the laptop requirements can be found on the student website.