LIACS >Kristian Rietveld >Courses >Parallel Programming I Fall 2018
headerimg

Banner image shows DAS-4 nodes at Leiden University (adapted from photo by Vianney Govers)

Parallel Programming I, Fall 2018

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.

A mailing list for this course was created. If you attend this course and have not received an email that your name was added to the mailing list, please send an email with subject:PPI to harryw@liacs.nl!!!!!

Examination

40% assignments: programming assignments. 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 Monday, October 8, 23:59 hours.

Assignment 1-B: Hellerman-Rarick. The deadline for this assignment is Wednesday October 31, 23:59 hours

Assignment 2: Parallel Minimum Spanning Tree Algorithm. The deadline for this assignment is Wednesday November 28, 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: Parallel Sorting Algorithm. The deadline for this assignment is Friday December 21, 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:

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 401.

DateDescription
Th. 6 September Hour 5, 6: Lecture: Introduction
Th. 13 September Hour 5, 6: Lecture: Implicit and Explicit Parallelism
Th. 20 September Hour 5, 6: Lecture: Explicit Parallelism and Fundamentals of Parallel Programming
Fr. 21 September 15:30 Lecture: Fundamentals and (Parallel) Sparse Matrix Computations
Th. 27 September No lecture this week
Th. 4 October No lecture this week
Wed. 10 October Deadline first programming assignment
Th. 11 October Hour 5, 6: Lecture: (Parallel) Dense Matrix Computations
Th. 18 October Hour 5, 6: Lecture: Parallel Sparse Matrix Computations
Th. 25 October Hour 5, 6: Lecture: Parallel Sparse Matrix and Graph Computations
Wed. 31 October Deadline "second" programming assignment 1-B
Th. 1 November Hour 5, 6: Lecture: Parallel Graph Computations
Th. 8 November Hour 5, 6: Lecture: Parallel Graph Computations (continued)
Th. 15 November Hour 5, 6: Question hour for second assignment, by Kris Rietveld
Th. 22 November Hour 5, 6: Lecture: Parallel Graph Computations and Sorting
Wed. 28 November Deadline second programming assignment 2
Th. 29 November Start programming assignment 3
Wed. 5 December Hour 7, 8: Lecture: Parallel Sorting and Parallel Programming Models
Th. 6 December Hour 5, 6: Lecture: tUPL Parallel Programming Paradigm
Th. 13 December 14:00 - 17:00 Exam SNELLIUS 174
Fr. 21 December Deadline programming assignment 3

Previous Years