CISC 879/PHYS 838
Parallelization for Scientific Applications
Fall 2000 Syllabus
Meeting Time and Place
Tuesdays/Thursdays 11:00-12:15, Smith 102A.
Prerequisites
There are no formal prerequisites.
CISC 662 Computer Architecture is recommended.
Familiarity with some aspects of computational physics is useful but
not required.
Required Textbook
Parallel Programming Techniques and Applications Using Networked
Workstations and Parallel Computers, by Barry Wilkinson and Michael Allen,
Prentice Hall,
1999.
Suggested References
Designing and Building Parallel Programs, by Ian Foster, Addison Wesley, 1995.
Using MPI:
Portable Parallel Programming with the Message-Passing Interface,
by W. Gropp, E. Lusk and A. Skjellum, MPI Press, 1999.
Parallel Programming
with MPI, by Peter Pacheco, Morgan Kaufmann, 1997.
Course Objectives and Content
This course is a problem-driven study of problem and data decomposition
techniques for parallel computation, focusing on scientific applications.
Topics include: concurrency, program decomposition, data distribution,
communication, load balancing, scalability, locality, granularity, debugging, and performance
evaluation.
MPI programming on a cluster will be emphasized as the parallel programming
paradigm.
A selection of computational physics problems will be addressed
as applications. These may include Monte Carlo and field line problems,
matrix intensive problems, and finite difference and spectral methods
applied to plasma and fluid dynamics.
The course is dual-listed as CISC 879 and PHYS 838 because one of the goals
of the course is to bring together computer scientists and physicists to
collaborate on
parallelization projects.
Course Requirements and Grading
- (20%) Lecture presentations
- (10%) Small MPI programs
- (15%) Attendance, preparation, participation, and attitude.
Unexcused absences and tardiness will detract
from your final grade. Active participation in classroom activities is
expected.
-
(40%) Group Projects
-
(15%) Final Presentation of group project
Email Questions
I have found that the quickest way to resolve ambiguities and answer questions
on homework and programming assignments is via email. Any questions sent
to pollock@cis.udel.edu will be anonymously posted with an answer via email to the
entire class.
Assignment Submission
The due dates are to be taken seriously and you should not expect them
to be extended. The pace of work is implicit in the due dates and necessary
if you expect to finish by the end of the semester. Deliverables to be
graded should be turned in at the start of class on the specified due
date. NO late assignments will be accepted FOR FULL CREDIT without discussion
with me prior to the due date. If you can not reach me, leave a message
on my voicemail. All other assignments not delivered by the due date are
considered late.
My philosophy on late assignments is: (1) Everyone should try their
best to complete all assignments by the specified due date. (2) People
who work conscientiously to make the deadlines s hould be rewarded for
their promptness and sacrifice of sleep. Thus, allowing others to hand
in late assignments without some penalty is not fair to these people. However,
there are various circumstances that may prevent you from completing an
assignment by the due date. Allowing no late assignments would not give
you much incentive to continue to work on the assignment, which is a major
source of learning in this course. Thus, I believe late assignments are
better than no assignment.
Late assignments will be penalized 10% off the total possible points
if turned in within the first 24-hour period after the specified due date
and time, and 10% per 24-hour period (or fraction of a day) (including
weekends) after that time, up to a week after the due date. Late assignments
will be accepted with penalty up to one week after the due date. Assignments
submitted at any later time without an approved excuse will not be accepted.
It is up to you to determine the version of your assignment to be graded.
You must weigh the late penalty against the completeness of your assignment.
Posting Grades
With your permission, grades will be posted periodically (by your secret
code) outside my door (101D Smith Hall) or on the web site.
Questions about accuracy of recorded
grades should be addressed to me.
Policy on Academic Dishonesty
The projects in this class will be performed in groups. Small MPI
assignments will be done individually. You are permitted
to consult with other students and professors on any conceptual problems
or for debugging assistance on all programming assignments. Any evidence
of collaboration other than this kind will be handled as stated in the
Official Student Handbook of the University of Delaware. If you are in
doubt regarding the requirements, please consult with me before you complete
any requirement of this course.
Staff |
Name |
Office |
Email |
Phone |
Office Hours |
Instructor |
Lori Pollock |
101D Smith |
pollock@cis.udel.edu |
831-1953 |
3-4 pm Mondays, 2-4 Wednesdays, and by appt |
Instructor |
William Matthaeus |
217 Sharp Laboratory |
yswhm@bartol.udel.edu |
831-2780 |
By appt |