EECS 739: Parallel Scientific Computing, Spring 2017

Instructor

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

Course Information and Policies

Syllabus

Teaching Lecture Slides

Application of Parallel Numerical Linear Algebra to Acoustics
Chapter 3 - Principles of Parallel Algorithm Design
Chapter 6 - Programming Using the Message-Passing Paradigm
Expanded Version of Chapter 6
Chapter 5 - Analytical Modeling of Parallel Programs

Homework

Homework 1
Homework 2
Homework 3
Homework 4

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-matrix multiplication code

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

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

Example CUDA Code

VecAdd.cu (Vector addition)
Document explaining matrix multiplication GPU codes
MultNoShare.cu (Matrix Multiplication without shared memory)
multNoShare.h (Header file for use with MultNoShare.cu)
MultShare.cu (Matrix Multiplication with shared memory)
multShare.h (Header file for use with MultShare.cu)
Gradient Descent CUDA code

Instructions for Submitting CUDA Jobs to the ITTC SLURM Cluster and the EECS Cycle Servers

How to submit CUDA jobs to ITTC and EECS

Exams

Practice Midterm Exam
Midterm Exam
Practice Final Exam #1 (from Spring 2015)
Practice Final Exam #2 (from Spring 2016)