F21DP2 Distributed and Parallel Systems

Phil Trinder


The course is in 2 parts and additional course materials are available on Parallelism (GJM).

Course Outline

The following course outline should be taken as a guide to the intended content.

Lecture Notes

The slides used in the High-level Parallelism and Distribution part of the course are available below as PDF. Ghostview is a suitable tool for viewing them.

Topic 0: Introduction to parallel, distributed and mobile computation

Topic 1: Haskell as a Computation Language

Topic 2: Glasgow parallel Haskell (GpH)

Topic 3: GpH Development Methodology

Topics 4&5: Introducing Distribution, Socket-Based Distribution

Topic 6: Remote Procedure Call: RPC/RMI

Topic 7: Concurrent & Distributed Haskells

Topic 8: Grid Computing

Topic 9: Mobile Computation

Topic 10: Shared Memory (Multicore) Parallelism: OpenMP

Learning Objectives

Coursework and Practical Exercises

Haskell Lab

Haskell Lab Soln

Glasgow Parallel Haskell Lab

2008/09 Assessed Coursework (Part 1)

OpenMP Lab

Example Programs

reduction.c OpenMP example program

munge.c example program