Banner image shows DAS-4 nodes at Leiden University (adapted from photo by Vianney Govers)
Parallel Programming I, Fall 2017
Lecturer: prof.dr. H. A. G. Wijshoff
Description
The course presents an introduction to parallel programming and parallel architectures and subsequently the study of parallel algorithm design, parallel numerical computing, parallel graph computing and parallel sorting. Existing and new (parallel) programming paradigms will be discussed. The course lectures are completed with programming assignments and/or (theoretical) algorithmic problems.
Exam
Wednesday, December 20, 14:00 - 17:00 hours.
Examination
40% assignments: choice of programming assignments and/or (theoretical) algorithmic problems. 60%: Open "book" final exam.
Example exams: click here for exam 2015, click here for exam 2016.
Assignments
Assignment 1: Sparse LU Factorization. The skeleton code for this assignment can be found here. For those of you who want to work on an apple (MAC OS) platform a new skeleton code is made available and can be found here. Note that for using this code a gcc version of 4.9.0 is required. The deadline for this assignment is Wednesday November 1, 23:59 hours.
Assignment 2: Parallel Minimum Spanning Tree Algorithm. The deadline for this assignment is Friday November 24, 23:59 hours
Note that your implementation should also handle disconnected graphs, resulting in multiple spanning trees. Note also that as output you should report the total weight of each minimum spinning tree as well as the edges which belong to the spanning tree.
Assignment 3: Solving Sparse Linear Systems or Parallel Sorting Algorithm. The deadline for this assignment is Saturday December 30, 23:59 hours.
Literature
Textbook (not obligatory): Introduction to Parallel Computing. Ananth Grama, Anshul Gupta, George Karypis, and Vipin Kumar. 2003. Addison Wesley.
Lecture Slides:
- Lecture 1
- Lecture 2
- Lecture 3
- Lecture 4
- Lecture 5
- Lecture 6
- Lecture 7
- Lecture 8
- Assignment 2 Slides
- Lecture 9
- Lecture 10
- Lecture 11
- Lecture 12
Contact
One can contact the lecturer by e-mail: harryw (at) liacs.nl
Class Schedule
Lectures: Thursdays from 13:30 to 15:15 in room B01.
Date | Description |
---|---|
Th. 7 September |
Hour 5, 6: Lecture: Introduction |
Th. 14 September |
Hour 5, 6: Lecture: Implicit and Explicit Parallelism |
Th. 21 September |
Hour 5, 6: Lecture: Explicit Parallelism |
Th. 28 September |
Hour 5, 6: Lecture: Wrap up of Explicit Parallelism and Fundamentals of Parallel Programming |
Th. 5 October |
Hour 5, 6: Lecture: Parallel Numerical Agorithms |
Th. 12 October |
No lecture this week! |
Th. 19 October |
Hour 5, 6: Lecture: Parallel Numerical Algorithms and Sparse Algorithms |
Th. 26 October |
Hour 5, 6: Lecture: Parallel Sparse Algorithms |
Wed. 1 November | Deadline assignment 1 |
Th. 2 November |
Hour 5, 6: Lecture: Parallel Graph Algorithms |
Th. 9 November |
Hour 5, 6: Lecture: Parallel Graph Algorithms and Intro Assignement 2 |
Th. 16 November |
Hour 5, 6: Lecture: Parallel Graph Algorithms: MaxFlow |
Th. 23 November |
Hour 5, 6: Lecture: Parallel Sorting |
Fri. 24 November | Deadline assignment 2 |
Th. 30 November |
No lecture this week! |
Th. 7 December |
Hour 5, 6: Lecture: Parallel Programming Models |
Th. 14 December |
Hour 5, 6: Lecture: tUPL Parallel Programming Model |
Sat. 30 December | Deadline assignment 3 |
Wed. Dec 20 |
14:00 - 17:00 Exam ROOM 405 |