CSE721: Introduction to Parallel Computing (Wi 2006)
Instructor
Mario Lauria - office: DL 783, ph.: 292-7027, hours: Mon
2:30-3:30
(or by appointment)
Grader
Leo Glimcher - office: DL778,
hours: MW 10:30am, email : glimcher@cse.ohio-state.edu
Course Description
Principles and practice of parallel computing; design, implementation,
and evaluation of parallel programs for shared-memory architecutures
and distributed-memory
architectures.
Course Web site
http://www.cse.ohio-state.edu/~lauria/cse721/
Meeting time and place
T R 2:00-3:18PM -- DL 0305
Level and Credits
Prerequisites
Objectives
- Mastery of basic concepts of parallel computing;
- Mastery of parallel algorithm design and analysis;
- Familiarity of performance evaluation for parallel programs;
- Familiarity of problem solving on parallel computers;
- Exposure to several advanced parallel computers, such as, Cray
T94, SGI
Origin 2000, and cluster of PCs.
Texts
- [GGKK03] A. Grama, A. Gupta, G. Karypis, V. Kumar, Introduction
to Parallel Computing, 2nd edition, Addison-Wesley, 2003.
Topics (tentative)
| Number of Weeks |
Topics |
Readings |
| 2 |
Models of Parallel Computers |
[GGKK03] Ch. 2 |
| 2 |
Basic Communication Operations |
[GGKK03] Ch. 4 |
| 1 |
Performance and Scalability of Parallel Systems |
[GGKK03] Ch. 5 |
| 1 |
Principles of Parallel Program Design
|
[GGKK03] Ch. 3 |
| 1 |
Dense Matrix Algorithms |
[GGKK03] Ch. 8 |
| 1 |
Sorting |
[GGKK03] Ch. 9 |
| 1 |
Parallel I/O |
lecture notes
|
1
|
Other algorithms (TBD; if time
permits)
|
TBD
|
Grading Plan
| Homework and Programming Assignments |
30% |
| Project |
40% |
| Midterm Exam |
30% |
NOTE: there will be no final exam for this class, and the final
grading
will be based only on the project, assignement and midterm grades
according
to the above weights.
Exam Schedule
Project Schedule
| Proposal due |
Jan 24 (Tue) |
Final report due
|
Mar 7 (Tue) |
Presentations
|
Mar
7-9
|
Handouts
- Myricom, Inc. Guide
to Myrinet switches - info on Clos networks.
- Fabrizio Petrini and Marco Vanneschi. k-ary
n-trees: High Performance Networks for Massively Parallel Architectures.
In Proceedings of the 11th
International Parallel Processing Symposium,
IPPS'97, pages 87-93, Geneva, Switzerland, April 1997.
- Ed Huai-hsin Chi, Elizabeth Shoop, John Carlis, Ernest Retzel,
and John
Riedl. Efficiency
of Shared-Memory Multiprocessors for a Genetic Sequence Similarity
Search
Algorithm. Number TR97-05. University of Minnesota, Computer
Science
Department, Minneapolis, MN, Janurary, 1997.
- E. Smirni and D.A. Reed, Lessons from
Characterizing the Input/Output Behavior of Parallel Scientific
Applications
Performance Evaluation , 33, 1998, pp. 27-44.
Useful Links
http://oscinfo.osc.edu - OSC documentation site
http://www.mcs.anl.gov/mpi - MPI site at Argonne National Labs
Misc
HOMEWORK AND PROGRAMMING ASSIGNMENTS.
The course will involve 4
homeworks
assigned every alternate week. The homeworks will be due one week after
they are assigned. No late homework will be accepted under any
circumstance.
Late programming assignements, if authorized, will still be penalized
by 10% per day.
PROJECT. For your
term project, you can choose any topic
pertaining
to the subject matter of this course, i.e. algorithmic or performance
issues
in parallel computing. Here are some possibilities:
- Study of how to augment an existing MPI application so to use
MPI-IO for I/O operations and report the effect on the performance.
Here is a list of MPI codes that can
have a significant volume of I/O and therefore are appropriate for this
type of project. For these project a group of no more than two students
would be acceptable, with the understanding that both students get the
same grade for the project.
- Implementation of a distributed application using the BOINC
software platform using a suitable application (e.g. NCBI's BLAST).
- If you are not able to perform one of the projects above (please
send me a brief explaination), here are some more suggestions.
- Implementation, performance evaluation, and analysis of
experimental
performance
measurement for a comparative study of algorithms for some
computation/application.
At least two OSC systems should be used, and preferably at least two
alternative
implementations should be compared.
- Detailed study on the cost of one or more collective
communication
algorithms:
this can either be analytical (for some context not covered in the
text,
e.g. remove single-port assumption) or experimental (e.g. evaluation of
different alternatives for a system such as the SGI Origin2000).
- Survey of available public domain parallel software for some
chosen
computation/application,
and experimental comparison on one or more OSC systems.
- Here is a list of projects
done by
CIS721 students in the past.
By January 24, please send me a brief project proposal in electronic
format describing your
plans for the project. The project final report, also in electronic
format, is due on March 7.
The format of the proposal is
two pages, containing the following sections: introduction and
objectives, motivation, proposed approach, planned measurements.
The format of the final report
is five pages containing the following sections: introduction and
objectives, motivation, methodology, measurements, conclusions.
The presentation will consist
in a 5' talk per group on the assigned day; the talk will include a
succint description of the project and of the achieved results.
The project will be graded according to the following criteria:
satisfactory completion of the project, thoroughness of the
experiments, clarity of
exposition, strength of the conclusions.
READING ASSIGNMENTS. Some
light readings will be assigned from the
text
book for self reading.
HANDOUTS. Right now I
don't anticipate any handouts in addition to
those
listed above; however, if I come across something interesting and
relevant
to the course, its copies will be distributed in the class.
MAKE-UP EXAMS. Make-up
examination will only be given under
circumstances
where a student is prevented from taking the regular examination due to
unforeseen circumstances (e.g., sickness, flat tire), and a formal
proof
will be required to prove the prevailing circumstance.
STUDENTS WITH DISABILITY.
Any student who feels he or she may need
an
accomodation based on the impact of a disability should contact me
privately
to discuss his or her specific needs. Please contact the Office for
Disability
Services at (614) 292-3307, or visit 150 Pomerene Hall, to coordinate
reasonable
accommodations available for students with documented disabilities.
ACADEMIC
HONESTY. Students are expected to
know and abide by OSU's policy
on academic
integrity. Any work you submit, whether in a homework set or on an
exam, must be your own creation, unless exclusions are explicitly
described. Collaboration is allowed for working
out general principles and establishing your knowledge of the material
presented in the course, but you should not show your work to another
student, receive a copy of work done by another student, or copy any
work created by another student - whether a paper or electronic copy.
All instances of suspected academic misconduct will be reported to the
department chairperson and the Committee on Academic
Misconduct. Violations of the student code of conduct often result in
the student receiving a failing grade in the course. The best way to
avoid the temptation to cheat is to start on your
assignments in time to ask for help from the instructor or grader. It
is in your best interest to learn the material included on the
homeworks in order to perform well on the exams. Don't jeopardize
your GPA by flouting the standards of academic integrity expected of
OSU students.
Homeworks
- Homework #1 - (assigned Jan 12 - due
Jan 19)
- Homework #2 - (assigned Jan 30 - due
Feb 7)
- Homework #3 - (assigned Feb 16 - due
Feb 28)
- Homework #4 - (assigned Feb 28 - due Mar 7) - CANCELLED
Lecture slides
Jan 3 - Course intro, par. architectures classification (pdf)
Jan 5 - Static/dynamic interconnection networks (pdf)
Jan 10 - Interconnects: metrics, routing (pdf)
Jan 12 - Basic comm. operations: point-to-point, broadcast (pdf)
Jan 17 - One-to-all, A2A broadcast (pdf)
Jan 19 - One-to-all, A2A personalized communication (pdf)
Jan 24 - All-reduction, prefix, circular shift (pdf)
Jan 26 - Hw #1 solutions
Jan 31 - Performance modeling (pdf)
Feb 2 - Performance modeling: case study (pdf)
Feb 7 - Principles of parallel program design (pdf)
Feb 9 - Dense matrix algs.: matrix multiplication (pdf)
Feb 14 - Midterm
Feb 16 - Hw #2 solutions
Feb 21 - Gaussian elimination (pdf)
Feb 23 - Midterm solutions
Feb 28 - Parallel sorting (pdf)
Mar 2 - Parallel I/O
Mar 7 & 9 - Student presentations with the following schedule
- K.A.
- N.A.
- E.B.
- J.B.
- R.C.
- Y.D.
- M.I.
- Mar 9:
- B.L.
- G.L., Y.Y.
- W.M., Y.T.
- C.O.
- N.S.
- S.T., G.Z.
- J.X.
Last updated: Mar 15
M. Lauria