Course Parallel High-Performance Computing
Location and time:
- L Tu 9.00-11.00 in INF 368 (IWR) / 532, Th 9.00-11.00 in INF 368 (IWR) / 532
- E Th 14.00-16.00 in INF 350 (OMZ) / U012
Examination
- The oral examinations take place at two dates Th, 19.2.2015 and Tu, 3.03.2015 .
- Location of the examination is either room 420 or room 425 in 4th floor of IWR, INF 368.
- Individual examinations have been dated in the last two lectures. The specific time at your examination date will be send to you by email, Please reply that you have gotten the email. Who hasn't gotten an email from me until 6.2.2015, 18.00 or has no date at all, but has the approval (90 points or more), shall contact me asap./li>
Course Slides
Simulation on High-Performance Computers (pdf)All lecture slides are accessible here
Parallel Computing Architecture I (pdf)
Parallel Computing Architecture II (pdf)
Parallel Computing Architecture III (pdf)
Parallel Programming Models I (pdf)
Parallel Programming Models II (pdf)
Parallel Programming Models III (pdf)
Distributed Memory Programming Models I (pdf)
Distributed Memory Programming Models II (pdf)
Distributed Memory Programming Models III (pdf)
Distributed Memory Programming Models IV (pdf)
Evaluation of Parallel Algorithms (pdf)
Foundations of Parallel Algorithms (pdf)
Algorithms for Dense Matrices I (pdf)
Algorithms for Dense Matrices II (pdf)
Algorithms for Dense Matrices III (pdf)
Particle Methods I + II (pdf)
Programming of Graphics Cards (pdf)
Iterative Solution of Sparse Equation Systems (pdf)
Solution of Tridiagonal and Spare Linear Equation Systems (pdf)
Topics
Hardware
- (Scalable) computer architecture: SMP, NUMA, MIMD
- Realizations: Some architectures in detail
Programming models
- Programming models: OpenMP, MPI, PThreads
- Fundamental numerical algorithms: matrix multiplication
Algorithms
- Performance evaluation: Efficiency, speedup, scalability
- Parallel sorting
- Dense und sparse filled equation systems
Applications
- Parallel solution methods: Multigrid and domain composition
- Parallel numerical algorithms: Particle methods
- Parallel Numerical applications: neuroscientific computing, porous media flow
Exercises
Exercise sheet 1 (pdf)
Exercise sheet 2 (pdf) [Remarks for time measurement] [Remarks for Plotting of data]
Exercise sheet 3 (pdf)
Exercise sheet 4 (pdf) [OpenMP example program]
Exercise sheet 5 (pdf)
Exercise sheet 6 (pdf) [archive with examples of C++ threads ] [Hints related to ThreadTools]
Exercise sheet 7 (pdf)
Exercise sheet 8 (pdf) [MPI-ring] [sequential Pi] [Sequential Jacobi method] [Hints to use MPI in the computer pool]
Exercise sheet 9 (pdf)
Exercise sheet 10 (pdf) [Sequential matrix multiplikation][tools.h]
Exercise sheet 11 (pdf) [N-body problem] [visualization with Paraview]
Exercise sheet 12 (pdf)
Working from Remote in the Pool
Login from a linux computer with redirection of graphics output on the local client:
ssh -Y pHPCXXX@pool.iwr.uni-heidelberg.de
For XXX
is to use user identification.
After logging in you are at machine cip53. To avoid that not all users
share this single computer, it is meaningful, to login to another computer.
These have the names cip01 to cip52:
ssh -Y pHPCXXX@cipYY
Proposal: Everyone works on the machine that number YY
matches
the last two digits of the user identification XXX
.
Login from a windows computer with redirection of graphical output is somewhat
more complex, since you need an X-Server for Windows. The simplest possibility
is to install the Windows-X-Server implementation xming
as well
as an ssh-client putty
.
Literature
- A. Grama, A. Gupta, G. Karypis, V. Kumar: Introduction to parallel computing. Addison Wesley, 2nd edition.
- Hennessy, Patterson: Computer architecture -- a quantitative approach
- Gropp/Lusk/Skjellum: MPI -- Eine Einführung. Oldenbourg, 2007.