CS260: Parallel Computation

This year this class is involved in a supercomputing productivity study.

Class Information

Tue. Thurs.: 08:00-09:30, HSS 1128A.
Prof. Allan Snavely
  • http://www.sdsc.edu/~allans
  • Office Hrs: 3 p.m. Weds. SDSC 311
  • Prof. Henri Casanova
  • http://www.cs.ucsd.edu/~casanova
  • Office Hrs: 3 p.m. Weds. AP&M 3349C
  • TA

    Michael O. McCracken
  • Office Hrs: TBD

  • Course Description

    Interdisciplinary introduction to applied parallel computing on modern supercomputers. Topics include applications oriented architecture, software systems, MPI, OpenMp, Co-Array Fortran, data parallel systems, caches and vector processors, and parallel algorithms for numerical algorithms such as linear algebra, N-body problems, multigrid, fast multipole, wavelets and Fourier transforms, mesh generation, and partitioning. The course includes a project with hands-on emphasis on understanding the realities and myths of what is possible on the world's fastest machines.

    Class Schedule

  • Scribes:

    Homeworks

  • Thursday, 09.23.2004

  • Introduction (ppt)
  • Tuesday, 09.28.2004

  • MPI (ppt)
  • Scribes:
  • Reading Assignment (Week 2)
  • Horst Simon Interview
  • Early Evaluation of the Cray X1 (pdf)
  • MPI at Argonne, MPI User's Guide (Chapters 1 - 3) (ps) (pdf)
  • OpenMP Official Site, Livermore OpenMP Tutorial (Sections 1 - 3.6) (link)
  • Co-Array Fortran Official Site, read A short introduction to Co-Array Fortran, skim The complete language definition, read Why not just use MPI?, read A subset easy to translate into OpenMP Fortran
  • Thursday, 09.30.2004

  • OpenMP (ppt)
  • Scribes:
  • Tuesday, 10.05.2004

  • Parallel Platforms (ppt)
  • Scribes:
  • Thursday, 10.07.2004

  • Matrix Matrix Multiply (ppt)
  • Scribes:
  • Tuesday, 10.12.2004

  • The PRAM model (ppt)
  • Scribes:
  • Tuesday, 10.18.2004

  • CoArray Fortran (ppt)
  • Scribes:
  • Tuesday, 10.21.2004

  • Sources of Parallelism and Locality in Numerical Methods #1 (ppt)
  • Scribes:
  • Tuesday, 10.26.2004

  • Sources of Parallelism and Locality in Numerical Methods #2 (ppt)
  • Scribes:
  • Thursday, 10.28.2004

  • Algorithmic Techniques on a Ring of Processors (ppt)
  • Scribes:
  • Thursday, 11.9.2004

  • Scheduling Theory (pdf)
  • Scribes:
  • Thursday, 11.16.2004

  • Heterogeneous Load Balancing (ppt)
  • Scribes:
  • Homework #1 Homework 1 Due Tuesday 10/11 at midnite
  • Homework #2 Homework 2 Slides Due Tuesday 10/25 at midnite
  • Homework #3 same as Homework #2 but now in CAF on the X1 Due Tuesday 11/9 at midnite A partial solution by Bob Numrich. Use as an example of syntactically correct CAF but don't assume it is a complete solution (it isn't) or that it doesn not have bugs (it may)
  • A short introduction to FORTRAN
  • Projects

    Grading Information

  • 10% Scribing and class participation
  • 40% Programming homework
  • 50% Final project
  • Computing Infrastructure

  • You need to go here and fill out an application in order to recieve an X1 account. Use the project name pulldown menu to select the project number 9999SD1-UCSD Productivity Study (link)
  • Cray X1 primer (link)
  • Cray X1 documentation (link)
  • Instructions for using the DataStar (User Guide) (Short Guide)
  • High Productivity Computing Systems (HPCS) Project
  • References

    Books

  • Designing and Building Parallel Programs, by Ian Foster, Addision-Wesley Publishing. (Available Online)
  • Introduction to parallel computing : Design and Analysis of parallel algorithms, by Vipin Kumar, Benjamin-Cummings Publishing.
  • Sourcebook of Parallel Computing, Jack Dongarra, Ian Foster, et al, Morgan Kauffman Publishing.
  • MPI/OpenMP/Co-Array Fortran Documentation

  • MPI Forum
  • MPI at Argonne, MPI User's Guide (Chapters 1 - 3) (ps) (pdf)
  • OpenMP Official Site
  • A User's Guide to MPI by Peter Pacheco (pdf)
  • Introduction to OpenMP - tutorial from WOMPEI 2000 (link)
  • Writing and Tuning OpenMP Programs on Distributed Shared Memory Machines (link)
  • The Co-Array Fortran Project (link)
  • Similar Courses at Other Universities

  • Applied Parallel Computing, @MIT (link)
  • Applications of Parallel Computers, @UC Berkeley (link)
  • Parallel Numerical Algorithms, @UIUC (link)
  • Interesting Links

  • Top 500 SuperComputers
  • Dead SuperComputer Society
  • Flash mob computing
  • Top 10 Algorithms