Difference between revisions of "Parallel Numerics - Winter 13"

From Sccswiki
Jump to navigation Jump to search
Line 38: Line 38:
  
 
=== Tutorials ===
 
=== Tutorials ===
<!-- Corrections with new version are marked in red.
 
 
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
 
| '''Tutorial ''' || '''Topics''' || '''Worksheet''' || '''Proposal for solution / code''' || '''Additional (Slides)'''
 
| '''Tutorial ''' || '''Topics''' || '''Worksheet''' || '''Proposal for solution / code''' || '''Additional (Slides)'''
 
|-
 
|-
| '''1''' || Flynn's Taxonomy & MPI Basics || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet1.pdf sheet1.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet1_solution.pdf sheet1_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws1/ws1_task6.cpp ws1_task6.cpp] ||
+
| '''1''' || Flynn's Taxonomy & MPI Basics || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet1.pdf tutorial_1] || || <!--[http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet1_solution.pdf sheet1_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws1/ws1_task6.cpp ws1_task6.cpp] || -->
 +
<!-- |-
 +
| '''2''' || Numerical Integration & P2P Communication I || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet2.pdf sheet2.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet2_solution.pdf sheet2_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws2/ws2_task1.cpp ws2_task1.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/Flynn_SPMD.pdf Flynn_SPMD.pdf]
 
|-
 
|-
| '''2''' || Numerical Integration & P2P Communication I || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet2.pdf sheet2.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet2_solution.pdf sheet2_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws2/ws2_task1.cpp ws2_task1.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/Flynn_SPMD.pdf Flynn_SPMD.pdf]
+
| '''3''' || Vector-Vector Operations & P2P Communication II || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet3.pdf sheet3.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet3_solution.pdf sheet3_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws3/ws3_task5.cpp ws3_task5.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/Comm_Modes.pdf Comm_Modes.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/Block_Send.pdf Block_Send.pdf]
 
|-
 
|-
| '''3''' || Vector-Vector Operations & P2P Communication II || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet3.pdf sheet3.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet3_solution.pdf sheet3_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws3/ws3_task5.cpp ws3_task5.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/Comm_Modes.pdf Comm_Modes.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/Block_Send.pdf Block_Send.pdf]
+
| '''4''' || Matrix-Matrix-Operations & P2P Communication III || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet4.pdf sheet4.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet4_solution.pdf sheet4_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws4/ws4_task5.cpp ws4_task5.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/AmdahlGustaf.txt AmdahlGustaf.txt]
 
|-
 
|-
| '''4''' || Matrix-Matrix-Operations & P2P Communication III || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet4.pdf sheet4.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet4_solution.pdf sheet4_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws4/ws4_task5.cpp ws4_task5.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/AmdahlGustaf.txt AmdahlGustaf.txt]
+
| '''5''' || Parallel Gaussian elimination & Collective Operations || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet5.pdf sheet5.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet5_solution.pdf sheet5_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws5/ws5_task3.cpp ws5_task3.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/Collective.pdf Collective.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/Pivoting.txt Pivoting.txt]
 
|-
 
|-
| '''5''' || Parallel Gaussian elimination & Collective Operations  || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet5.pdf sheet5.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet5_solution.pdf sheet5_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws5/ws5_task3.cpp ws5_task3.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/Collective.pdf Collective.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/Pivoting.txt Pivoting.txt]
+
| '''6''' || Tridiagonal Matrices, Hockney/Golub method & Message Tags || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet6.pdf sheet6.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet6_solution.pdf sheet6_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws6/ws6_task1_serial.cpp ws6_task1_serial.cpp] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws6/ws6_task1_parallel.cpp ws6_task1_parallel.cpp] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws6/ws6_task3.cpp ws6_task3.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/Hockney_Golub_Notes.pdf Hockney_Golub_Notes.pdf]
 
|-
 
|-
| '''6''' || Tridiagonal Matrices, Hockney/Golub method & Message Tags || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet6.pdf sheet6.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet6_solution.pdf sheet6_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws6/ws6_task1_serial.cpp ws6_task1_serial.cpp] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws6/ws6_task1_parallel.cpp ws6_task1_parallel.cpp] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws6/ws6_task3.cpp ws6_task3.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/Hockney_Golub_Notes.pdf Hockney_Golub_Notes.pdf]
+
| '''7''' || Sparse Matrix-Vector Multiplication & MPI Communicators  || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet7.pdf sheet7.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet7_solution.pdf sheet7_solution.pdf] <br>[http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws7/ws7_task3.cpp ws7_task3.cpp]||
 
|-
 
|-
| '''7''' || Sparse Matrix-Vector Multiplication & MPI Communicators  || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet7.pdf sheet7.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet7_solution.pdf sheet7_solution.pdf] <br>[http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws7/ws7_task3.cpp ws7_task3.cpp]||
+
| '''8''' || Stationary Methods || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet8.pdf sheet8.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet8_solution.pdf sheet8_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws8/ws8_task3_serial.cpp ws8_task3_serial.cpp] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws8/ws8_task3_parallel.cpp ws8_task3_parallel.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/Jacobi_Relaxation_Notes.pdf Jacobi_Relaxation_Notes.pdf]
 
|-
 
|-
| '''8''' || Stationary Methods || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet8.pdf sheet8.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet8_solution.pdf sheet8_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws8/ws8_task3_serial.cpp ws8_task3_serial.cpp] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws8/ws8_task3_parallel.cpp ws8_task3_parallel.cpp] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/Jacobi_Relaxation_Notes.pdf Jacobi_Relaxation_Notes.pdf]
+
| '''9''' || Gradient Methods, Preconditioning & Eigenvalues  || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet9.pdf sheet9.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet9_solution.pdf sheet9_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws9/ws9_task1_sequential.c ws9_task1_sequential.c] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/code/ws9/ws9_task1_parallel.c ws9_task1_parallel.c] ||
 
|-
 
|-
| '''9''' || Gradient Methods, Preconditioning & Eigenvalues  || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet9.pdf sheet9.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet9_solution.pdf sheet9_solution.pdf] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws9/ws9_task1_sequential.c ws9_task1_sequential.c] <br> [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/code/ws9/ws9_task1_parallel.c ws9_task1_parallel.c] ||
+
| '''10''' || Domain Decomposition || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet10.pdf sheet10.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS13/tutorium/sheet10_solution.pdf sheet10_solution.pdf] || -->
|-
 
| '''10''' || Domain Decomposition || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet10.pdf sheet10.pdf] || [http://www5.in.tum.de/lehre/vorlesungen/parnum/WS12/sheet10_solution.pdf sheet10_solution.pdf] ||
 
 
|}
 
|}
-->
 
  
 
== Literature & External Links ==
 
== Literature & External Links ==

Revision as of 15:18, 23 October 2013

Term
Winter 13
Lecturer
Univ.-Prof. Dr. Thomas Huckle
Time and Place
Tuesday, 09:15-10:45, Room 02.07.023
Audience
CSE (compulsory course, 3rd semester), Mathematics (Master), Informatics (Master) (Modul IN2012)
Tutorials
Friday, 10:15-11:45, Room 02.07.023, Organization: Michael Lieb
Exam
to be defined
Semesterwochenstunden / ECTS Credits
SWS (2V + 2Ü) / 5 Credits
TUMonline
[reference]



This course will be given in every winter term. The lectures and tutorials are conducted in English, and the course substitutes the German lecture "Numerik auf Parallelrechnern".

News

19.09.2013 First lecture will be on 22.10.2013, first tutorial will be on 25.10.2013.

Contents

  1. High-Performance Computing
  2. Performance: Analysis, Modeling, and Measurements
  3. Basic Linear Algebra Subprograms
  4. Direct Solution of Sparse Linear Systems
  5. Iterative Methods for Linear Systems
  6. Linear Eigenvalue Problems
  7. Programming in MPI

Course Material

Lecture Notes

Slides

Tutorials

Tutorial Topics Worksheet Proposal for solution / code Additional (Slides)
1 Flynn's Taxonomy & MPI Basics tutorial_1

Literature & External Links

  1. Introduction to High Performance Scientific Computing (Eijkhout, Chow, van de Geijn) [free download]
  2. Numerical Linear Algebra for High-Performance Computers (Dongarra, Duff, Sorensen, van der Vorst)
  3. Parallel Algorithms for Matrix Computations (Gallivan, Heath, Ng, Ortega,...)
  4. A User's Guide to MPI (Pacheco)
  5. Iterative Methods for Sparse Linear Systems (Saad)
  6. Loesung linearer Gleichungssysteme auf Parallelrechnern (Frommer)
  7. An Introduction To Quantum Computing for Non-Physicists

Exam

Allowed Material for the exam

Regulations

Old Exams