Math 447/627 - Introduction to Parallel Computing

Fall 2021 - Matthias K. Gobbert

Detailed Schedule - Last Updated 08/24/21


The synchronous class meetings are on Tuesdays and Thursdays, 01:00-02:15, please see the detailed schedule below for more information.
This schedule is designed to give you an overview of the material to be covered and is tentative in nature. This is a living document and will be updated throughout the semester.
The chapter numbers refer to Peter S. Pacheco, Parallel Programming with MPI, Morgan Kaufmann, 1997.
The numbers HW1a, HW1b, HW2a, etc. in the Class column indicate homeworks "HW" due as PDF upload to Blackboard on that day.
The numbers BQ0a, BQ0b, etc. in the Main Topic column indicate online Blackboard quizzes "BQ" due before that class.
The numbers GQ0a, GQ2a, GQ2b, etc. in the Main Topic column indicate in-class group quizzes "GQ" during that class due as PDF upload.
These numbers in the detailed schedule are designed to show the teaching philosophy and learning techniques associated with each class meeting.
See the Assignments area of the Blackboard site for our course for the precise due dates and times.


Class Date Main Topic
1, HW1a Tu 08/31 Module 1: Motivation for parallel computing and overview, BQ0a, BQ0b, IQ0, HW1a, GQ0a, IQ0b
2 Th 09/02 Module 1: Linux and serial ANSI-C "Hello, world!" on the HPCF cluster
3, HW1b Tu 09/07 Module 1: Parallel "Hello, world!" and running jobs on the HPCF cluster
4 Th 09/09 Module 2: Chapter 3: Greetings!
5, HW2a Tu 09/14 Module 2: Chapter 4: An Application: Numerical Integration
6 Th 09/16 Module 2: Chapter 4: An Application: Numerical Integration, GQ2a
7 Tu 09/21 Module 2: Chapter 9: Debugging Your Program
8, HW2b Th 09/23 Module 2: Scientific computing: numerical error vs. accumulated round-off, GQ2b
9 Tu 09/28 Module 3: Chapter 5: Collective Communication
10 Th 09/30 Module 3: Scientific computing tools: Make utility, matrix representation
11, HW3a Tu 10/05 Module 3: Chapter 5: Collective Communication
12 Th 10/07 Module 3: Chapter 5: Collective Communication
13 Tu 10/12 Module 3: Chapter 10: Design and Coding of Parallel Programs (power method)
14 Th 10/14 Module 3: Chapter 11: Performance
15, HW3b Tu 10/19 Module 3: Chapter 11: Performance
16 Th 10/21 Module 4: Scientific computing tools: BLAS, LAPACK, BLACS, ScaLAPACK, PETSc (Chapter 15)
17, HW4a Tu 10/26 Report on project background, GQ4a
18 Th 10/28 Module 4: Scientific computing tools: BLAS
19, HW4b Tu 11/02 Module 4: Scientific computing tools: BLAS
20 Th 11/04 Module 5: Chapter 10: Design and Coding of Parallel Programs (CG method)
21, HW5a Tu 11/09 Module 5: Chapter 13: Advanced Point-to-Point Communication
22, HW5b Th 11/11 Module 5: Chapter 13: Advanced Point-to-Point Communication
23, HW5c Tu 11/16 Module 5: Chapter 12: More on Performance
24 Th 11/18 Module 5: Chapter 12: More on Performance
25 Tu 11/23 Update on project work
Th 11/25 Thanksgiving Holiday
26, HW5d Tu 11/30 Module 6: OpenMP Multi-Threading in Parallel Computing
27 Th 12/02 Module 6: Chapters 2, 10 (Sorting), 6, Appendix A
28 Tu 12/07 Module 6: IEEE Standard for Floating-Point Arithmetic
29 Th 12/09 Update on project work
Tu 12/21 01:00 p.m. Project Presentations; note the date and time!

Copyright © 2001-2021 by Matthias K. Gobbert. All Rights Reserved.
This page version 1.1, August 2021.