EECS 739: Parallel Scientific Computing, Spring 2021

Instructor

Dr. Suzanne Shontz
Department of Electrical Engineering and Computer Science
University of Kansas

Course Information and Policies

Syllabus

Teaching Lecture Slides

Principles of Parallel Algorithm Design: Concurrency and Decomposition
Principles of Parallel Algorithm Design: Concurrency and Mapping
Programming Using the Message Passing Paradigm (more detailed version)
Parallel Programming Using the Message Passing Paradigm (less detailed version)
MPI Groups and Communicators Tutorial
MPI Topologies
Expanded Version of Chapter 5 on Analytical Modeling of Parallel Systems
Slightly less detailed version of Chapter 5 on Analytical Modeling of Parallel Systems
Parallel Gauss-Jacobi and Gauss-Seidel (UIUC)
Parallel Gauss-Jacobi and Gauss-Seidel (Stanford)
Example of User-defined Function for Use with MPI_Reduce
Understanding Asynchronous Parallel Pattern Search
Asychronous Parallel Pattern Search Method for Nonlinear Optimization
Multi-Directional Search: A Direct Search Algorithm for Parallel Machines
A Class of Trust-Region Methods for Parallel Optimization
Experience with Approximations in the Trust Region Parallel Direct Search Algorithm
Shontz Penn State Industrial Engineering Seminar Talk Slides - April 2007
Shontz ICCS 2009 Talk - May 2009
Shontz Talk on Parallel Linear Solver for Acoustics

Teaching Lecture Videos

Lecture 2 (February 4, 2021)
Lecture 6 (February 23, 2021)

Example C/C++ Code

LUFactorization.cpp

Example MPI + C/C++ Code

Examples from MPI tutorials
Sources for MPI tutorials (including the ones provided above)
Parallel Matrix Multiplication Example

Instructions for Submitting Serial and Parallel Jobs to the ITTC SLURM Cluster

Directions for Submitting Parallel Jobs to Cluster
SLURM Template Serial SBATCH Script
Completed Serial SBATCH Script
SLURM Template Parallel SBATCH Script
Completed Parallel SBATCH Script

Homework

Homework 1
Homework 2

Exams

Practice Exam 1
Exam 1

Final Project

Final Project