CS 554 / CSE 512: Parallel Numerical Algorithms (Fall 2023)
What  Where 

Time  Wed/Fri 11:0012:15 
Location  1302 Siebel 
Instructor  Edgar Solomonik (office: 4229 Siebel, email: solomon2@illinois.edu) 
Instructor Office Hours  Fridays 2:303:30pm (4229 Siebel) 
TA  Alexey Voronin (email: voronin2@illinois.edu) 
TA Office Hours  Tuesdays 23pm (virtual/zoom: see piazza for a link) 
Class URL  https://relate.cs.illinois.edu/course/cs554f23/ 
Class recordings  View MediaSpace » 
Web forum  View Piazza » 
Brief Course Description
Numerical algorithms for parallel computers: parallel algorithms in numerical linear algebra (dense and sparse solvers for linear systems and the algebraic eigenvalue problem), numerical handling of ordinary and partial differential equations, and numerical optimization techniques.
Assignments
Homework 1 (due September 6th) »
Homework 2 (due September 27th) »
Project Proposal (due Oct 11) »
Project Report (due Dec 13th) »
Quizzes
Due a week after the start of each lecture, posted prior to lecture, covered in class.
Quiz 1: Parallel Architectures »
Quiz 2: Network Topologies and Collective Communication »
Quiz 3: Collective Communication and Parallel Algorithm Design »
Quiz 4: Parallel Algorithm Design »
Quiz 5: Parallel Programming Languages »
Quiz 6: Analysis of Parallel Algorithms »
Quiz 7: Efficiency and Scalability for Vector and Matrix Products »
Quiz 8: Parallel Matrix Multiplication and LU Factorization »
Quiz 9: LU Factorization and Triangular Solve »
Quiz 10: Triangular Solve and Sparse Matrix Products »
Quiz 11: Sparse Triangular Solve and Elimination »
Quiz 12: Parallel Sparse Cholesky »
Quiz 13: Parallel Sparse Iterative Methods »
Quiz 14: Preconditioned Iterative Methods and QR Factorization »
Quiz 15: Givens Rotations for QR and Parallel Eigenvalue Computation »
Quiz 16: Parallel Eigenvalue Computation and Fourier Transform »
Quiz 19: Low Rank Approximation and Randomized Algorithms »
Quiz 20: HSS Matrices and Nonlinear Optimization »
Quiz 21: Matrix Completion and ODE IVPs »
Quiz 22: Solvers for Numerical PDEs »
Quiz 25: Tensor Decompositions »
Course organization
Virtual and physical participation for all components the course will be made possible. Late enrollment/registration is also possible (immediate participation is welcome if registration is anticpated).
Grading: 30% project, 25% homework, 18% midterm (in class, Oct 20), 18% final (in class, Dec 6th), 9% quizzes may be subject to upwards curve
Projects: Submit initial proposal by Oct 11, revisions may be requested and will be due Oct 27. Projects related to ongoing investigations or overlapping with other courses are encouraged, so long as they have some component related to this course. A project poster session will be held on Dec 1st and reports are due on Dec 13th.
Slides and notes are based on the Fall 2015 slides by Michael T. Heath. Resources relevant to the course are available also on the old course webpage by Prof. Heath. See also the previous course webpage.
Course Outline
 Chapter 1: Parallel Computing

Chapter 2: Parallel Thinking
 Notes
 Parallel Algorithm Design
 Parallel Programming
 Parallel Perfromance

Chapter 3: Dense Linear Systems
 Vector and Matrix Products
 LU Factorization
 Triangular Linear Systems

Chapter 4: Sparse Linear Systems
 Direct Methods
 Tridiagonal and Banded Matrices
 Sparse Iterative Methods

Chapter 5: Eigenvalue Problems
 QR Factorization
 Eigenvalue Computation

Chapter 6: Matrix Models
 Fast Fourier Transform
 Low Rank Approximation
 Numerical Optimization

Chapter 7: Differential Equations
 Ordinary Differential Equations
 Partial Differential Equations
 Particle Methods
 Electronic Structure Calculations
 Tensor Analysis