syllabus - James Fairbanks

advertisement
CSE 6220 Introduction to High Performance
Computing
Spring 2014
General Information
Instructor:
Srinivas Aluru
Office
Phone
email
Office Hours
:
:
:
:
1336 Klaus
385-1486
aluru@cc.gatech.edu
TTh 10:30-11:30
and by appointment
Teaching Assistants:
James Fairbanks
Office
email
Office Hours
:
:
:
1343 Klaus
james.fairbanks@gatech.edu
W 1-2:30
Rahul Nihalani
Office
email
Office Hours
:
:
:
1209 Klaus
rahuln@gatech.edu
F 2-3:30
Course Overview
Course Outline
This course will provide a comprehensive introduction to parallel algorithms and parallel programming,
with strong emphasis on the design of parallel algorithms and their rigorous analysis. Exposure to parallel
programming is provided through programming assignments using MPI. Throughout the course, the design of
algorithms is interlaced with the programming techniques useful in coding them. Programming assignments
will be done on the Jinx cluster (http://support.cc.gatech.edu/facilities/instructional-labs/jinx-cluster). The
topics covered in this course include:
• Performance measures: Speedup, efficiency and scalability.
• Model of parallel computation and basic communication primitives.
• Parallel prefix and applications.
• Parallel sorting.
• Embeddings.
• Parallel matrix algorithms.
• Communication networks for parallel computers and parallel models of computation.
• Parallel fast Fourier transforms.
• Parallel Programming with MPI: Writing and executing MPI programs, collective communication,
grouping data for communication, communicators and topologies.
• Additional topics (as time permits):
– Parallel random number generation.
– Parallel Octrees.
– Parallel N-body methods.
– Parallel Bayesian network construction.
Text
You will not need to purchase any text for this course. Lecture notes for most topics covered in class, copies
of slides used in class, and other reference material as appropriate, will be provided by the instructor. The
following books are useful references.
• Introduction to Parallel Computing: Design and Analysis of Algorithms by A. Grama, A. Gupta, G.
Karypis and V. Kumar.
This book can be accessed via Safari Books Online at
http://proquest.safaribooksonline.com.www.library.gatech.edu:2048/book/
software-engineering-and-development/0201648652
• Parallel Programming with MPI by Peter S. Pacheco.
The following freely available web resources are excellent sources for studying MPI.
• A book on MPI is available at http://www.netlib.org/utk/papers/mpi-book/mpi-book.html.
• A nice tutorial on MPI is available at https://computing.llnl.gov/tutorials/mpi/.
• The following web pages for MPI routines come in handy when programming:
http://www.mcs.anl.gov/research/projects/mpi/www/www3/.
Prerequisites
An undergraduate course in design and analysis of algorithm, or equivalent knowledge.
Course Website
T-square site will be used for electronic communication (https://t-square.gatech.edu). It will be used for
posting class notes, slides, homeworks, and programming assignments. It will also be used for electronically
submitting homework and programming assignments. Please check the site frequently for additional useful
information pertaining to the class and announcements for upcoming deadlines.
We will be using Piazza for class discussion. The Piazza site for the course can be directly accessed at
https://piazza.com/gatech/spring2014/cse6220aqq3, or via a link made available from the course T-square
site. The Piazza system is highly catered to getting you help fast and efficiently from classmates, the TA,
and myself. Rather than emailing questions to the teaching staff, I encourage you to post your questions on
Piazza. If you have any problems or feedback for the developers, email team@piazza.com.
Course Policies
The course grade will be based on homeworks, programming assignments and exams. Homeworks and
programming assignments are due before 11:59 PM Eastern Standard Time on the day they are due. The
deadline for distance-learning students is one week after the deadline for on-campus students. Students are
strongly encouraged to be concise in answering homeworks, and use LaTeX for preparing solutions (other
forms are acceptable). Late submissions are not accepted unless there is a compelling reason with proof.
There will be three exams, two midterms and a final. Students who are not able to take a midterm exam at
the scheduled time due to valid reasons (such as conference travel) should make a request well in advance,
and be prepared to take the exam earlier than scheduled time. The final exam will be comprehensive. MPI
programming will be tested solely through the programming assignments, and will not be part of the exams.
Students are reminded of their responsibility for ethical conduct. Each student must read and abide by
the Georgia Tech Academic Honor Code (www.honor.gatech.edu). The students are encouraged to approach
the instructor and the TAs regarding any difficulties in understanding the course material or carrying out
the assignments. Any cases of plagiarism are taken seriously, and dealt in accordance with the GT academic
honor code.
You are encouraged to solve the homework problems independently, at least initially, as they serve as
ideal preparation for the exams. You are allowed to collaboratively work with other students in solving the
homework problems. However, each student must write the solution on her/his own and explicitly mention
the names of collaborating student(s) for each problem in every copy of the submission. Programming
assignments are to be done in groups of two. Each student in a group should be familiar with the entire
program and be able to answer questions, even though the work can be split between the students.
Grading
The course grade will be based on the following weights:
Homeworks
Programming Assignments
Midterm I
Midterm II
Final Exam
—
—
—
—
—
15%
25%
15% (Thu, Feb 20)
15% (Thu, Mar 20)
30% (Thu, May 1, 11:30AM - 2:20PM)
Learning Disabilities
If you have a learning disability that makes it difficult for you to understand the lectures or perform the
required work, please inform the instructor. Every possible effort will be made to accommodate any special
needs required.
Download