ITF23019 Parallell and Distributed Programming (Spring 2022)
Facts about the course
- ECTS Credits:
- 10
- Responsible faculty:
- Faculty of Computer Sciences, Engineering and Economics
- Campus:
- Halden
- Course Leaders:
-
- Thi Thuy Nga Dinh
- An Ngoc Lam
- Lars Vidar Magnusson
- Teaching language:
- English or Norwegian
- Duration:
- ½ year
Table of contents
The course is affiliated to the following study programme
This course is compulsory in
- Bachelor in Computer Science – Specialisation in programming
Elective course for others.
Required prerequisite knowledge
Recommended previous knowledge
Teaching semester
Content
- Basic principles of parallelisation
- Different forms of distributed processing
- Communication and synchronization mechanisms
The student's learning outcomes on passing the course
Knowledge
The student
- understands basic principles of Multi-Core programming
- understands basic principles of programming against different types of processors
- has knowledge of different techniques for parallel processing
- has knowledge of different types of parallel algorithms and their performance
- has knowledge of distributed processing such as heavy computing and Cloud Computing
Skills
The student can write
- programs with parallel processing
- applications with distributed processing
General competence
The student can
- efficient use of modern hardware
- exploit the potential of distributed systems
Teaching and learning methods
Workload
Exam
Portfolio and written exam
The exam is divided into two parts:
Part 1 counts 50% and consists of:
- up to 10 individual programming exercises
- a programming project (individually or in groups of two). No report is required, but the students must demonstrate their projects by giving a short presentation (15-20 min).
Part 2 counts 50% and is an individual written exam based on the course curriculum. Duration 2 hours. No supporting materials allowed.
Grading scale A - F in both parts. Both parts of the exam must be passed to pass the course. The student will get an individual joint grade for the entire course.
Examiners
Conditions for resit/rescheduled exams
In the case of resit-/rescheduled exam, part 1, the programming project must be discussed with the course instructor.
Course evaluation
This course is evaluated by a:
- Mid-term evaluation (compulsory)
The responsible for the course compiles a report based on the feedback from the students and his/her own experience with the course. The report is discussed by the study quality committee of the faculty of Computer Sciences.
Reading list
- Borut Robič, Patricio Bulić, and Roman Trobec, "Introduction to parallel computing: from algorithms to programming on state-of-the-art platforms", Springer Book, 2018.
- George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair " Distributed System: Concepts and Design", Fifth Edition, Addison-Wesley, 2012.
- Various online resources will be posted on the learning platform.