CS267: Lecture 9

Sources of Parallelism and Locality in Simulation II

September 26, 2001

Lecturer: Kathy Yelick

Abstract

We continue from lecture 8 by discussing the last of our four basic simulation categories: We discuss  basic methods for parallelizing PDEs and the importance of meshes (structured and unstructured) to discretize the domain. We also describe the relationship between sparse matrices and meshes, and show some examples of meshes and matrices from real applications. 

These notes steal liberally from lectures by previous CS267 instructors (Jim Demmel, David Culler, David Bailey, and Bob Lucas).

2001 Lecture Notes

PowerPoint, Postscript, PDF

Readings

  • Notes from Lectures 11 and 12 from CS267, Spring 1996
  • Notes from Lecture 13 from CS267, Spring 1996
  • Triangle, a 2D mesh generator written by Jonathan Shewchuk.
  • PETSc, a Portable, Extensible Toolkit for Scientific Computation (an object oriented parallel PDE solver)
  • ParMetis, a parallel graph partitioner, by George Karypis
  • Prometheus a multigrid-based solver for finite element problems on irregular meshes, by Mark Adams
  • Example of Adaptive Mesh Refinement at LBL, by John Bell and Phil Colella
  • SuperLU_MT is a parallel implementation of sparse Gaussian elimination for SMPs, by Xiaoye Li. The following paper describes a distributed memory version about to be released.