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

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:

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.

DateDescription
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

Previous Years