Numeriske Metoder for Parallelle Datamaskiner
(Numerical Methods for Parallel Computers)
[Lectures]
[Literature]
[Using MPI]
[Examples]
[Hotlist]

Alle studenter må huske å trykke opp e-mail adressen sin på første side av obligen!
Det viser seg at programmet fra i fjor, som er laget for å løse 2D varmeledningslikning, innholder en feil. Det er nemlig funksjonen updateDataStrukture som er feilprogrammert. Den riktig koden skal se ut som
void updateDataStrukture(double*** u_prev, double*** u)
{
double** tmp;
tmp = *u_prev;
*u_prev = *u;
*u = tmp;
}
Og i hovedprogrammet skal det være
updateDataStrukture(&u_prev, &u);
De studenter som har vanskelighet med obligen nettopp på grunn av dette kan søke om en ukes utsettelse for levering av obligen. Men husk å sende en søknad til nmpd først!

Course information in English is available.
En forelesningsplan
gir en oversikt over hva
som blir gjennomgått og den obligatoriske prosjektoppgaven
- Tid:
- Onsdag kl. 13.15 - 15.00.
- Sted:
- Rom 3B.
- Første forelesning:
- 28. august 1996.
- Forelesere:
- Are Magnus Bruaset og Aslak Tveito.
- Obligatorisk prosjektoppgave:
- Innlevering 27. november 1996.
- Besvarelsen skal leveres individuelt og vil
telle med i karaktergivningen på eksamen.
- Eksamen:
- Det holdes muntlig eksamen 12. desember 1996.

Literature
The readings for the NMPD course consist of

Using MPI
The program development in this course is based on the message passing
standard MPI. For a
short and practical introduction to the use of MPI at IfI,
we refer to the
tutorial Getting started with MPI and Parallel
Programming. This document describes how to compile, link and
run your MPI programs on
modsognir,
the local four-processor
SGI
Power Challenge L computer.
For further information on the MPI version we are running, please have a look
at the MPICH Guide. The MPI commands are listed in the
MPI Reference Card (only a small subset of these
functions are needed for the NMPD exercises ;-). Further details can be found
in the MPI User's Guide, or in the list of
Frequently
Asked Questions.
Although the NMPD course will focus on MPI as the basic tool for interprocessor
communication, there are several other alternatives based on message passing.
One widely used protocol is
PVM,
which is an acronym for Parallel Virtual Machine.

Example programs
If problems encountered when compiling the following example programs,
please send an e-mail.
The MPICH distribution includes some sample programs, see
/usr/local/mpi/examples. In addition, here are some example
programs from the NMPD course. Some of these examples will serve as a basis
for project assignment. Copy these files to your own directory, compile and
run!
- The dot product:
- The min-max examples:
- The heat equation in 1D:
- The matrix-vector product:
- Linear heat conduction in 2D:
- A reference solution for part 3f in the project assignment:
Remember: In order to generate a Makefile for your own application,
you should run mpireconfig as described in the tutorial
Getting started with MPI and Parallel Programming.
Net resources on parallel computing
Here are some WWW pages that focus on parallel computations:
- Designing and
Building Parallel Programs
- This is the electronic version of Ian Foster's textbook.
- The MPI Home Page
- The ultimate WWW resource on MPI.
- The
MPI FAQ
- A list of frequently asked questions about MPI.
- The
PVM Home Page
- Entry point for PVM related information.
- Charm's Home Page
- The parallel programming laboratory at the University of
Illinois.
- The
PETSc Package for Scientific Computing.
- An object-oriented, parallel environment for numerical solution
of PDEs.
- Parallel Iterative
Methods
- A Fortran library of iterative solvers.
- HPCCP
- The NASA High Performance Computations and Communications Program.
- The ZIB Home Page
- Konrad-Zuse-Zentrum, Berlin.
- AHPCRC
Research Projects
- The Army High Performance Computing Research Center at the
Minnesota Supercomputer Institute.
- The
University of Oslo Supercomputing Facilities
- The computing center at the University of Oslo.
- Para//ab
- The supercomputing laboratory at the University of Bergen.
- Collected
Supercomputing Sites
- A comprehensive hotlist for supercomputing sites world wide.
- National HPCC Software
Exchange
- More pointers to high performance computing resources.
Last updated October 25, 1996 by
nmpd@ifi.uio.no