Introduction to Parallel and Distributed Computing

RISC-Linz logo

Wolfgang Schreiner
326.603, WS 2003/2004
Monday 8:30-10:00, Room T1010
Start: October 6

The efficient application of parallel and distributed systems (multi-processors and computer networks) is nowadays an important task for computer scientists and mathematicians. The goal of this course is to provide an integrated view of the various facets of software development on such systems including the most important aspects of

Class presentation will be accompanied by hands-on experience on a SGI Origin 3800 distributed shared memory multiprocessor using programming models such as

Students are expected to elaborate small programming exercises and to present them in class; some experience in C programming is assumed.


Ian T. Foster
Designing and Building Parallel Programs -- Concepts and Tools for Parallel Software Engineering, Addison Wesley, Reading, MA, 1995.
Michael J. Quinn
Parallel Computing -- Theory and Practice, 2nd edition, McGraw-Hill, New York, NY, 1994.
Kai Hwang
Advanced Computer Architecture: Parallelism, Scalability, Programmability, McGraw-Hill, New York, 1993.


Introduction (PostScript Slides)
A cross-section of the course.
The SGI Origin System
Architecture and operating system
Semiautomatic Parallelization
Basic concepts and their application on the Origin.
Performance of Parallel Programs (PostScript Slides)
Modeling and analyzing the performance of parallel programs, some material from Chapter 3 of Designing and Building Parallel Programs
MultiThreaded Programming
The MPI Message Passing Interface
Distributed Memory Programming (PostScript Slides)
Some algorithms for distributed memory multiprocessors.
Parallel Program Design (PostScript Slides)
The engineering of parallel programs based on Chapter 2 of Designing and Building Parallel Programs.


Maintainer: Wolfgang Schreiner
Last Modification: December 16, 2003

[Up] [RISC-Linz] [University] [Search]