Course Syllabus - Fall 2005

 

CS 441/632/732 Parallel Computing

 

Course Instructor

Purushotham Bangalore

Email: puri@cis.uab.edu

Office: CH 130

Phone: 205-934-8604

Office Hours: Tuesday and Thursday  03:30 PM - 05:00 PM.

                      Other times by appointment only.

Course Session

Tuesday and Thursday  2:00 PM - 3:15 PM     Room CH 435

Course Homepage

http://www.cis.uab.edu/cs441

Prerequisite

CS 330 Computer Organization and Assembly Language Programming and CS 304 Programming in C/C++ or Programming in Fortran

                 OR

MA 360 Scientific Programming

                 OR

Permission of Instructor

Teaching Assistant

Billy Jones ( jonesw@cis.uab.edu)

Office Hours: Tuesday and Thursday 8:00-10:00 A.M.

Room: CH154A

Description

Three hours lecture.

Introduction to parallel computing architectures and programming paradigms. Theoretical and practical aspects of parallel programming and problem solving. Design, development, analysis, and evaluation of parallel algorithms.

Objectives

1.   To introduce principles and concepts of parallel computing techniques including POSIX threads, Message Passing Interface (MPI), and hybrid approaches.

2.   To provide hands-on experience in implementing various parallel programming techniques on the CIS HPC clusters and SGI Altix at the Alabama Supercomputing Center.

Textbook

Parallel Programming: Techniques and Applications Using Networked Workstations and Parallel Computers, 2nd Edition by Barry Wilkinson and Michael Allen. Publisher: Prentice Hall. 2005. ISBN: 0-13-140563-2.

Reference Introduction to Parallel Computing, 2nd Edition by Ananth Grama, Anshul Gupta, George Karypis, and Vipin Kumar. Publisher: Addison Wesley. 2003. ISBN: 0-201-64865-2.

Grading Policy

                                CS 441              CS 632               CS 732

Tests (2)                     40%                    40%                   30%

Homework (4-5)        40%                    40%                   40%

Final Exam                  20%                    20%                   20%

Term Paper                                                                      10%

 

Final Exam will be held on Thursday, December 8, 1:30 p.m.- 4:00 p.m.

 

Students enrolled in CS 632 and CS 732 will have additional questions on homework and exams. 

Late Submission 1. All assignments are due at the beginning of class on the due date. Any assignment turned in after this deadline is considered late. Late assignments will lose 10% for every 24-hour period, up to a maximum of 50% (weekends and holidays count as one 24-hour period). Any assignment submitted one week after the due date will receive a score of zero.
2. All assignments must be turned in even if they are late to pass this course. Failure to submit any assignments will result in a grade of ‘F’.

Class Attendance

1.   Attendance is mandatory for this course. If you know you will be absent for a legitimate reason, let the instructor know. If you are sick bring a doctor's excuse or a written university excuse to resolve the absences. An absence has to be resolved as soon as possible - otherwise it will not be treated as an excused absence.

2.   Students auditing this course are expected to attend the lectures. Auditing students with more than three unexcused absences will receive a failing grade.

3.   There will be NO make-up exams. A student anticipating an excused absence from an exam should make arrangements in advance to sit for the exam at another time.

Academic Honesty

Students who plagiarize a computer program (or parts of a program), get others to write a program (or parts of a program), or are found cheating on a quiz/exam, will be reported for academic dishonesty. Anyone who is caught cheating will receive a 0 on a given test or assignment. If a second offense occurs, the student will receive an F in the class. This includes both the provider of the information as well as the receiver of the information. Any student who violates the university's academic honesty policy will be reported for academic discipline. All university and department policies related to students are included here by implication.

Add/Drop Policy

1.      A student can drop the course through August 25, 2005.

2.      A student can add the course through August 26, 2005.

3.      A student can withdraw with a "W" by October 19, 2005. (Undergraduate)

4.      A student can withdraw with a "W" by December 5, 2005. (Graduate)

5.      For more details about add/drop policies check with Registration/Academic Records.

E-mail

Every student will be required to use his/her official email address that is blazerid@uab.edu. New students must login and configure their email addresses. For more details on obtaining blazerid and configuring email please see: http://www.uab.edu/blazerid. All email communications will be made using this address. Additional instructions or announcements will be sent by e-mail, so check your mail often. Also check the course webpage and the discussion forum for up-to-date information and announcements. Instructor will check email frequently, so e-mail is often the best way to contact the instructor.

Tentative Schedule (i.e., subject to change, check the website for updates)

Date

Topic

Comment

Aug 18

Overview and Introduction

 

Aug 23

Chapter 1 – Parallel Computers

Homework-0
Sample lab report

Aug 25

Chapter 1 – Parallel Computers 

Aug 25 – Last day to drop

Aug 26 – Last day to add

Aug 30

Chapter 8 – Programming with Shared Memory

 

Sep 1

Chapter 8 – Programming with Shared Memory 

Homework-0 Due

Assign Homework-1

Sep 6

Chapter 8 – Programming with Shared Memory 

 

Sep 8

Chapter 2 – Message Passing Computers MPI Tutorial

 

Sep 13

Chapter 2 – Message Passing Computers 

 

Sep 15

Chapter 2 – Message Passing Computers 

 

Sep 20

Chapter 3 – Embarrassingly Parallel Computations

Homework-1 Due

Assign Homework-2 (Updated)

Sep 22

Chapter 3 – Embarrassingly Parallel Computations

Review for Exam-1 

 

Sep 27

Exam-1

 

Sep 29

Chapter 4 – Partitioning and Divide-and-Conquer Strategies

Abstracts for Term Paper Due (Ph.D. students)

Oct 4

Chapter 4 – Partitioning and Divide-and-Conquer Strategies 

Assign Homework-3 

Oct 6

Chapter 5 – Pipelined Computations

 

Oct 11

Chapter 6 – Synchronous Computations

Homework-2 Due

Oct 13

Chapter 6 – Synchronous Computations 

 

Oct 18

Chapter 7 – Load Balancing and Termination Detection

Oct 19 – Last day to withdraw (Undergraduate)

Oct 20

Chapter 7 – Load Balancing and Termination Detection 

Oct 25

Chapter 9 – Distributed Shared Memory Systems and Programming

Homework-3 Due

Oct 27

Chapter 9 – Distributed Shared Memory Systems and Programming

Review for Exam-2 

 

Nov 1

Exam-2

 

Nov 3

Chapter 11 – Numerical Algorithms

Assign Homework-4 

Nov 8

Chapter 11 – Numerical Algorithms 

 

Nov 10

Chapter 11 – Numerical Algorithms 

 

Nov 15

Chapter 10 – Sorting

 

Nov 17

Chapter 10 – Sorting 

 

Nov 22

Parallel I/O

 

Nov 24

No Class

Thanksgiving Holiday

Nov 29

Chapter 12 – Image Processing

 

Dec 1

Chapter 12 – Image Processing

Review for Final Exam 

Dec 5 – Homework-4 Due

Project Report Due (Ph.D. Students)

Dec 5 – Last day to withdraw (Graduate)

Dec 8

1:30-4:00 p.m.

Final Exam

 

Last Updated: August 16, 2005
by Purushotham Bangalore
Course Homepage: http://www.cis.uab.edu/cs441

 

Dept. of Computer and Information Sciences   The University of Alabama at Birmingham
115A Campbell Hall, 1300 University Boulevard, Birmingham, Alabama 35294-1170
Phone: 205.934.2213 * Fax: 205.934.5473
Disclaimer for official UAB web pages