
CS 594001 Understanding Parallel Computing:
Spring 2006 – 3 Credits Wednesdays from Room C211 Prof. Jack Dongarra with help
from Profs. George Bosilca, David Cronk, Graham Fagg, and Julien Langou Email: dongarra@cs.utk.edu Phone: 8659748295 Fax: 8659748296 Office hours: Wednesday TA: Thara Angskun O : 350 Claxton Complex, 9746722 OH: Class Roster If your name is not on the list or some
information is incorrect, please send mail to the TA: BAINS, KRISTEN JEANNENE kbains@utk.edu BUCHANAN, NICHOLAS ASA nbuchan2@utk.edu DU, PENG pdu@utk.edu DUENEZGUZMAN, EDGAR ALFREDO eduenezg@utk.edu GLATTER, MARKUS mglatter@utk.edu Mitchel Horton mhorton5@utk.edu LI, ZUOPAN zli5@utk.edu MOLLENHOUR, COLIN MICHAEL cmollenh@utk.edu
ORSEGA, MICHAEL CAJETAN morsega@utk.edu PJESIVACGRBOVIC, JELENA jpjesiva@utk.edu SARAOGI, MAYANK msaraogi@utk.edu SELLERS,
CHRISTOPHER LYNN cseller1@utk.edu XIA, QIU qxia@utk.edu And the course
mailing list: cs594parallelstudents@cs.utk.edu
Book for the Class: (It
should be at the bookstore on Monday 1/16/2006.) There was a mix up and the
book is suppose be at the bookstore on 1/20/2006. The Sourcebook of Parallel Computing, Edited by Jack
Dongarra, Ian Foster, Geoffrey Fox, William Gropp, Ken Kennedy, Linda
Torczon, Andy White, October 2002, 760 pages, ISBN 1558608710, Morgan
Kaufmann Publishers. Lecture Notes: (Tentative outline of the
class)
Introduction
to High Performance Computing Read Chapter
1, 2, and 9 Homework 1 (due
Homework2
(due February 1, 2006)
Message
Passing 2 (updated 1/26/06) Notes
on booting over the network
HPC
Architectures and Parallel Programming Considerations Homework3
(due February 15, 2006) Read Chapter 3
Homework4
(due February 22, 2006) Homework5
(Due March 1, 2006)
Homework
6 (Due March 29, 2006) Read Chapter 3 Toward an Optimal Algorithm for
Matrix Multiply
Read Chapter 20, Bailey’s
paper on “12 ways to fool …” Homework
7 (Due April 5, 2006) March 22 – Spring Break
Dense Linear Algebra (part1,
part2,
part3) Read Chapter 20
Dense Linear Algebra (part3) Homework
9 (due April 19, 2006) Read Chapter 14 pp 409  442
Iterative Methods in Linear Algebra (part
1) Homework See slide 72 of lecture. (due April 26,
2006) Homework
10 modified, example
results, mgs code
(due April 26, 2006) Read Chapter 20 and 21
Iterative Methods in Linear Algebra (part 2) See updates to last weeks homework (April 12) Read Chapter 21
Tools
for Debugging and Performance Analysis; Read Chapter 15
Class Final reports Order of presentation: 1. Kristen Bains 2. Nick Buchanan 3. Peng Du 4. Edgar A DuenezGuzman 5. Markus Glatter 6. Mitchel Horton 7. Zuopan Li 8. Colin Mollenhour 9. Michael Orsega 10. Jelena PjesivacGrbovic 11. Mayank Saraogi 12. Christopher Sellers 13. Qiu Xia · Projects reports to be turned in on Monday,
May 1^{st}. Additional Message Passing Systems.
The PVM
home page. Other
useful reference material
· Here’s a pointer to specs on various processors: http://www.geek.com/procspec/procspec.htm http://processorfinder.intel.com/scripts/default.asp A good introduction to message passing
systems.
``Message Passing Interfaces'', Special issue of Parallel Computing , vol 20(4), April 1994. A paper by members of the PVM team on the differences between PVM
and MPI. Geist, G.A, J.A. Kohl, P.M. Papadopoulos, `` PVM and MPI: A
Comparison of Features '', Calculateurs Paralleles , 8(2), pp. 137150, June, 1996.
Papers by members of the MPI team on the differences between PVM
and MPI. ``Why are PVM and MPI So Different'', William Gropp and Ewing Lusk
(submitted to The Fourth European PVM  MPI Users' Group Meeting) and ``PVM and MPI are completely different'', William Gropp and Ewing
Lusk, to appear in the journal Future Generation Computer Systems, 1998. Ian Foster, Designing and Building Parallel Programs, see http://wwwunix.mcs.anl.gov/dbpp/
Alice Koniges, ed., Industrial
Strength Parallel Computing, ISBN1558605401, Morgan
Kaufmann Publishers, Michael Quinn, Parallel Programming, see http://web.engr.oregonstate.edu/~quinn/Comparison.htm David E. Culler & Jaswinder
Pal Singh, Parallel Computer Architecture, see http://www.cs.berkeley.edu/%7Eculler/book.alpha/index.html George Almasi and Allan Gottlieb, Highly Parallel
Computing Standard Books on Message Passing
``MPI  The Complete
Reference, Volume 1, The MPI1 Core, Second Edition'', ``Using MPI,'' ``MPI: The Complete Reference  2nd Edition:
Volume 2  The MPI2 Extensions'', Online Documentation and Information about
Machines ·
Overview of Recent Supercomputers, Aad J. van der Steen and Jack J. Dongarra, 2005.
·
Catalog of Commercial
Hardware and Software Vendors Other Parallel
Information Sites · NHSE  National
HPCC Software Exchange · Netlib Repository at UTK/ORNL · LAPACK · GAMS  Guide
to Available Math Software · Center for Research
on Parallel Computation (CRPC) · Supercomputing & Parallel
Computing: Conferences · Supercomputing
& Parallel Computing: Journals · High
Performance Fortran (HPF) reports · High
Performance Fortran Resource List · Major Science
Research Institutions from Caltech · Message
Passing Interface (MPI) Forum · High Performance
Fortran Forum · OpenMP · PVM
· DoD High Performance Computing Modernization Program · DoE Accelerated Strategic Computing Initiative (ASCI)
· National Computational Science
Alliance Related Online
Textbooks · Templates for the Solution of Linear Systems:
Building Blocks for Iterative Methods, · PVM
 A Users' Guide and Tutorial for Networked Parallel Computing, MIT Press, · MPI
: A MessagePassing Interface Standard · LAPACK
Users' Guide (Second Edition), · MPI:
The Complete Reference, MIT Press, ·
Using MPI: Portable
Parallel Programming with the MessagePassing Interface by W. Gropp, E.
Lusk, and A. Skjellum · Parallel Computing
Works, by G. Fox, R. Williams, and P. Messina (Morgan Kaufmann
Publishers) · Computational
Science Education Project · Designing and Building Parallel Programs.
A deadtree version of this book is available by AddisonWesley. · High
Performance Fortran (HPF), a course offered by For performance analysis: · Raj Jain, The Art
of Computer Systems Performance Analysis. John Wiley, 1991. Papers on performance analysis tools: · Ruth A. Aydt, "The Pablo SelfDefining Data Format,"
November 1997, click here. · Jeffrey K. Hollingsworth, Barton P. Miller,
Marcelo J. R. Gongalves, Oscar Naim,
Zhichen Xu and Ling Zheng, "MDL: A Language
and Compiler for Dynamic Program Instrumentation", International
Conference on Parallel Architectures and Compilation Techniques, San
Francisco, CA, November 1997, click here.
· Barton P. Miller, Mark D. Callaghan,
Jonathan M. Cargille, Jeffrey K. Hollingsworth, R.
Bruce Irvin, Karen L. Karavanic, Krishna Kunchithapadam and Tia Newhall. "The Paradyn Parallel Performance Measurement Tools",
IEEE Computer 28(11), (November 1995). click here. · Steven T. Hackstadt and Allen D. Malony, "Distributed Array
Query and Visualization for High Performance Fortran, February 1996. · Jerry Yan and Sekhar Sarukkai and Pankaj Mehra, "Performance
Measurement, Visualization and Modeling of Parallel and Distributed Programs
using the AIMS toolkit", Software Practice and Experience 25(4), April
1995, 429461 Other Online Software and Documentation· Matlab documentation is available from several sources, most notably by typing ``help'' into the Matlab command window. A primer (for version 4.0/4.1 of Matlab, not too different from the current version) is available in either postscript or pdf. · Netlib, a repository of numerical software and related documentation · Netlib Search Facility, a way to search for the software on Netlib that you need · GAMS  Guide to Available Math Software, another search facility to find numerical software · Linear Algebra Software Libraries and Collections · LAPACK, stateoftheart software for dense numerical linear algebra on workstations and sharedmemory parallel computers. Written in Fortran. · CLAPACK, a C version of
LAPACK. · ScaLAPACK, a partial version of LAPACK for distributedmemory parallel computers. · LINPACK and EISPACK are precursors of LAPACK, dealing with linear systems and eigenvalue problems, respectively. · SuperLU is a fast implementations of sparse Gaussian elimination for sequential and parallel computers, respectively. · Sources of test matrices for sparse matrix algorithms · University of Florida Sparse Matrix Collection · Templates for the solution of linear systems, a collection of iterative methods, with advice on which ones to use. The web site includes online versions of the book (in html and postscript) as well as software. · Templates for the Solution of Algebraic Eigenvalue Problems is a survey of algorithms and software for solving eigenvalue problems. The web site points to an html version of the book, as well as software. · Updated survey of sparse direct linear equation solvers, by Xiaoye Li · MGNet is a repository for information and software for Multigrid and Domain Decomposition methods, which are widely used methods for solving linear systems arising from PDEs. · Resources for Parallel and High Performance Computing · Millennium a UC Berkeley campuswide parallel computing resource · Resources for CS 267, Applications of Parallel Computers · ACTS (Advanced CompuTational Software) is a set of software tools that make it easier for programmers to write high performance scientific applications for parallel computers. · PETSc: Portable, Extensible, Toolkit for Scientific Computation · Issues related to Computer Arithmetic and Error Analysis · Efficient software for very high precision floating point arithmetic · Notes on IEEE Floating Point Arithmetic, by Prof. W. Kahan · Other notes on arithmetic, error analysis, etc. by Prof. W. Kahan · Report on arithmetic error that cause the Ariane 5 Rocket Crash Jack Dongarra4/25/2006 