INF9063 – Programming heterogeneous multi-core architectures
Course description
Schedule, syllabus and examination date
Course content
The course addresses issues related to heterogeneous multi-core architectures that are in all computing varying from mobile phones, commodity desktops to large computing clusters. The students will use and program three different architectures, and have to learn how to handle different types of asymmetric cores, interconnects and memory. During the course, the students will understand the challenges in writing efficient programs for the different architectures.
Lab-assignments are an important part of the course. The students program the SIMD units found in modern processors, graphics processing units (GPUs) from Nvidia and machines connected with PCI Express interconnect from Dolphin Interconnect Solutions.
Learning outcome
After completing INF9063 you can:
- Understand how a typical multimedia workload such as a video encoder is built up.
- Use profiling to identify and fix bottlenecks in programs.
- Detailed knowledge about parallelize, offload and optimize parts of a serial program on heterogeneous multi-core architectures.
- Use the SIMD units found on almost all modern processors.
- Program Nvidia GPUs using the CUDA framework.
- Using PCI Express interconnect to distribute workloads in several machines.
- In addition, each PhD student will be given an extended curriculum within the field/research area of the course. The syllabus must be approved by the lecturer so that the student can be admitted to the final exam.
Admission
PhD candidates from the University of Oslo should apply for classes and register for examinations through Studentweb.
If a course has limited intake capacity, priority will be given to PhD candidates who follow an individual education plan where this particular course is included. Some national researchers’ schools may have specific rules for ranking applicants for courses with limited intake capacity.
PhD candidates who have been admitted to another higher education institution must apply for a position as a visiting student within a given deadline.
Prerequisites
Recommended previous knowledge
INF3190 – Data communications (continued)/INF4190 – Data communications (discontinued) and INF3151 – Operating systems (continued)/INF4151 – Operating systems (continued).
Overlapping courses
- 10 credits overlap with INF5063 – Programming heterogeneous multi-core architectures (continued)
- 5 credits overlap with INF5062 – Programming asymmetric multi-core processors (discontinued)
Teaching
4 sessions with 6 hours lectures/presentations
3 sessions with 3 hours lab.
Examination
Graded mark will be handed out based on 3 graded assignments (home exam) with oral presentation that account for approximately 33% each. Failing a graded assignment does still allow participation in the remaining exams. All exams must be taken during the same semester.
Note that the exam in INF9063 will be more extensive than the one in INF5063.
Grading scale
Grades are awarded on a pass/fail scale. Read more about the grading system.
Explanations and appeals
Resit an examination
Students who can document a valid reason for absence from the regular examination are offered a postponed examination at the beginning of the next semester.
Re-scheduled examinations are not offered to students who withdraw during, or did not pass the original examination.
Withdrawal from an examination
It is possible to take the exam up to 3 times. If you withdraw from the exam after the deadline or during the exam, this will be counted as an examination attempt.
Other
It is strongly recommended to attend the first lecture since it will be given important information.