COMP/CS 605: Introduction to Parallel Computing (Spring, 2017)

Course Lecture Notes

[Return to Course Website]

Note: Future dates listed on the lecture schedule below are for general planning purposes and are subject to change.
 
The lectures will be organized into the following topics or modules:
  1. Introduction to Parallel Computing; &
    SciComp Basics: Unix, performance, benchmarking, analysis, resource management
  2. Distributed Computing with Message Passing Interface
  3. Shared-Memory Programming with Shared Memory Programming with Pthreads and OpenMP
  4. Cuda Programming
Each of these modules will have 1-2 coordinated homework assignments and an in-class exam. See Homework and Course Policies for more details.
 
 WK     DATE      DAY  MOD# CONTENT   DOWNLOAD     
1 01/19/17 Th M1 Course Introduction; Pretest. 605.sp17-Intro.pdf
2 01/24/17 T M1 Overview of High Performance Computing (cont.).
Running Jobs on Parallel Computers.
Running Jobs
2 01/26/17 TH M1 Running jobs (cont.) & HW1 review Homeworks
3 01/31/17 T M1 Serial Code Performance:
GNU Profile:
Visualizing Results with GNUPlot

SerialPerformance.pdf
gprofile.pdf
gnuplot.pdf
3 02/02/17 TH M1 HPC Architecuture. HPC_Architecture.pdf
4 02/07/17 T M1 Parallel Programming: Code Basics ParallelProgs-CodeBasics.pdf
4 02/09/17 TH M1 Parallel Programming Design (Foster) ParPgmDesign-Foster.pdf
5 02/14/17 T M2 Introduction to the Message Passing Interface (MPI)
Parallel Code Example: MPI Trapezoid Function
IntroToMPI.pdf
MPI-Trap.pdf
5 02/16/17 TH M2 MPI: Point to Point and Collective Communications MPI-Comms.pdf
6 02/21/17 T M2 Module 1: Quiz 1 (takehome) -
6 02/23/17 TH M2 MPI: Derived Datatypes.
MPI: Vector Operations.
MPI-DerivedDataTypes.pdf
MPI-VectorOps.pdf
7 02/28/17 T M2 Parallel Performance.
ParallelPerformance.pdf
7 03/02/17 TH M2 MPI: Matrix-Vector Multiplication.
MPI-MatrixVectorMult.pdf
8 03/07/17 T M2 MPI: Communications Performance. MPI-Comms-Perf.pdf
8 03/09/17 TH M2 MPI: Matrix-Matrix Multiplication. MPI-MatMatMult.pdf
9 03/14/17 T M2 MPI Cartesian Communicators and Topologies: Introduction MPI-Cart-Comms-and-Topos.pdf
9 03/16/17 TH M2 MPI Topologies: Data Distribution, Halo Exchange, PDE's. MPI-Cart-Comms-DataDistr-PDEs.pdf
10 03/21/17 T M2 MPI Halo Exchange
Review takehome exam.
Gropp-HaloExch.pdf
http://edoras.sdsu.edu/~mthomas/sp17.605/homework/
10 03/23/17 TH M2 Module 2 Quiz Q&A session for takehome exam. tba
11 03/28/17 T - Spring recess - no class -
11 03/30/17 TH - Spring recess - no class -
12 04/04/17 T M3 Introduction to Shared Memory Programming using PThreads.
Mat-Mat-Mult.
Controlling Access & Synchronization: Critical Sections.
Pthreads-Introduction.pdf
12 04/06/17 TH M3 Synchronization: mutexes, roducer/conusmer; barriers. Pthreads-Cont-Access-Sync.pdf
13 04/11/17 T M3 Shared Memory Programming with OpenMP:
Introduction; Trapezoid Rule; Var Scope; Reduction.
OpenMP-Intro.pdf
13 04/13/17 TH M3 OpenMP: Parallel For Directive. OpenMP-ParFor.pdf
14 04/18/17 T M3 OpenMP: Producer-Consumers OpenMP-Prod-Cons.pdf
14 04/20/17 TH -\M4 Introduction to GPU Computing.
NVIDIA Tutorial: GPU/CUDA Overview. GPU Computing: Running Jobs.
GPUComputing-Intro.pdf
CUDA Overview
GPUComputing-RunningJobs.pdf
15 04/25/17 T M4 GPU Computing: Architecture
Compute Unified Device Architecture (CUDA).
GPU Architecture
CUDA-Overview
15 04/27/17 TH M4 CUDA Block Parallelism
CUDA Thread Parallelism
CUDA Shared Memory
CUDA-Block-Parallelism
CUDA-Thread-Parallelism
CUDA-SharedMemory
16 05/02/17 T M4 CUDA Matrix-Matrix Multiplication. CUDA-Mat-Mat-Mult
16 05/04/17 TH M4 tba
17 05/09/17 T - Final Exam: Tuesday, May 9, 10:30-12:30 -
17 05/11/17 TH - Finals Week - no class -
18 05/17/17 TH - Grades due from instructors. (11 p.m. deadline.) tba
 

© 2017, Mary Thomas - All rights reserved.
OpenContent license defines the copyright on this document.

Counter for tumblr
Website Stats