VVZ API is not affiliated with ETH Zurich. Data might be outdated or incorrect. Please view the official ETHZ Vorlesungsverzeichnis for binding information.
Abstract
This course is on programming for parallel computers.At a low levels, memory, vectors/pipelining, branchprediction, and independent functional units are studied.The next level is on shared memory machines using OpenMP.At the highest level on multiple independent processors,networks and MPI programming are studied. Numericalexamples: FFT, linear algebra, and Monte-Carlo are studied.
Content
These lectures will cover methods of numerical algorithms in the perspective of parallel computing. Examples from linear algebra, Fast Fourier Transform, N-body simulations, and Monte-Carlo will be given. The course is not intended to be particularly theoretical, but rather practical. We will be concerned with the mapping of software onto hardware with the goal of optimal usage of the independence of functional units, multi-media and/or vector hardware, and optimal data distribution for shared/distributed memory machines. Accounts will be given on shared memory machines (HP Superdome with 48 superscalar processors and on the Cray SV-1/J90 cluter) and on the distributed memory Beowulf cluster (502 Pentium-III processors with XMM multi-media registers). Several paradigms will be discussed: instruction level parallelism, shared memory parallelism, and distributed memory parallelism. For example, vectorization on new microprocessors like Pentium-III, Itanium and Motorola/Apple G-4 will be examined.
Resources
Literature
1) P.S. Pacheco: "Parallel Programming with MPI", Morgan-Kaufmann, 1997 2) R. Chandra, R. Menon, L. Dagum, D. Kohr, D. Maydan, J. McDonald: "Parallel Programming in openMP", Morgan Kaufmann, 2001 3) H.G. Dietz and R.J. Fisher, "Compiler Optimizations for SIMD Within a Register" in "Languages and Compilers for Parallel Computing", Springer-Verlag, New York, 1999.
General Information
- Language
- English
- Frequency
- Yearly recurring
Examination
- Type
- session examination
- Mode
- oral 30 minutes
Course Components
| Type | Title | Time & Place | Hours |
|---|---|---|---|
| lecture | Paralleles numerisches Rechnen (Parallel Numerical Computing) |
|
2 h weekly |
| exercise | Paralleles numerisches Rechnen (Parallel Numerical Computing) |
|
2 h weekly |