CSE 260 - Parallel Computation (Fall 2005)

Course Description




Parallel computation has a rich and varied history, and the techniques for solving problems on high performance parallel computers are both intriguing and intellectually appealing.

This course will cover principles and practices of parallel programming with applications to real world problems. There will be a fair bit of programming in the course, which will culminate in a mini research project. Our computational platform will be a 16 node Linux Cluster operated by Academic Computing Services.

The prerequisite for CSE 260 is graduate standing. Students from other departments are welcome; contact me if you have any questions about your academic background.

The home page for this course is http://www.cse.ucsd.edu/classes/fa05/cse260.

The course has one required text:

      Introduction to Parallel Computing 2nd Ed, by Grama, Gupta, Karypis, and Kumar. ISBN 0-201-64865-2, Addison-Wesley Publisher, 2003.

Be sure to get the 2nd edition.

A handy book on MPI is Parallel Programming with MPI, by P. Pacheco, Morgan Kaufmann Publishers, 1997. I recommend you purchase this book if you anticipate doing a lot of MPI programming in the future, or if you are more comfortable using a text than on-line materials. (See a list of MPI reading materials at http://www-cse.ucsd.edu/users/baden/Doc/mpi.html)



Syllabus

  • Fundamentals (motivation, execution models, address space organization, performance)
  • Programming (message passing, threads, higher level models,I/O)
  • Data structures and their efficient implementation (multi-resolution representation, graphs, partitioning)
  • Applications (sorting, data intensive, irregular problems, discretization, and others)

  • See the web page for the  last offering of CSE 260 (Fall 2003).

    Maintained by . Last modified: Wed Sep 14 18:22:38 PDT 2005