Spring 2015
ACMS 40212/60212: Advanced Scientific Computing
Class time: MWF 9:25am - 10:15am.
Classroom: Hayes Healy Center 125
Office hours: W 4:00 pm - 5:00pm, HH242
MPI
U1010 UNIX for beginners
OpenMP
Textbook
Introduction to Parallel Computing, Second Edition has been put on reserve in Math. library. The electronic version is also available online at http://link.library.nd.edu/rplow (please contact Math. librarian for access if there is a problem)
Sample code is at /afs/crc.nd.edu/user/z/zxu2/Public/ACMS40212-S12 on crc machine.
Projects and Homework Assignments
Lecture notes
Lecture 01 | Single processor performance |
Lecture 01.1 |
Pointers (from cplusplus.com), Pointer and Memory (Notes from Stanford) |
Short notes on C++ , Short Introduction to Makefile |
Additional Reading |
Software Pipelining of Nested Loops |
Rixner etal, Memory access scheduling |
Best practices for scientific computing |
Additional Reading | Tips for writing clean code |
Lecture 02 |
Parallel programming platforms |
Lecture 03 |
Message-Passing Programming Using MPI (Part 1),
(Part 2)
|
Introduction to C/C++ MPI and PBS |
Lecture 04 | Principles of Parallel Algorithm Design (part 1) ,
(part 2),
(part 3),
(part 4)
|
Lecture 05 |
Parallel Matrix Algorithms (part 1), (part 2),
(part 3) |
Lecture 06 |
Performance Analysis |
---|
Lecture 07 |
Advanced MPI - process topology
|
Lecture 7 | GPU Programming |
GPU programming from nvidia developer centers |
Introduction to GPU Computing ,
CUDA C Programming Guide ,
CURAND
|
Lecture 08
|
Fast Linear Solvers (part 1) , (part 2) ,
(part 3) ,
(part 4) ,
(part 5) ,
(part 6)
|
Supplementary material | Debugging in Serial and Parallel, Totalview Tutorial |
Supplementary material | Walker. Parallel GMRES , Erhel. Parallel GMRES |
Lecture 09 | Numerical PDEs |