UNIVERSITY OF DELAWARE <br>
 DEPARTMENT OF COMPUTER AND INFORMATION SCIENCES

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

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