CS60027: Parallel Algorithms (LTP: 3-0-0, Credits: 3)   Autumn 2022

The parallel computing age is here and now, and we should be well equipped to face it as engineers and scientists. Main purpose of parallel processing is to perform computation faster by using a number of processors concurrently. Faster solutions yield improved performance to many problems including, but not limited to weather prediction, machine learning, artificial intelligence, medical imaging. In this course, we attempt to provide an indepth discourse on how to think about algorithms in a parallelized manner. Essentially, we provide a detailed study of how to design, analyze, and implement parallel algorithms for computers that have multiple processors. These steps are not always easy, but we attempt to delve into these matters, essentially to comprehend how to choose a parallel algorithm that makes good use of the target architecture.
See the course schedule for details.


Instructor


Teaching Assistants


Course Information

Prerequisites Basic concepts of Algorithms and Programming.
Lectures Lecture timings are:

Monday 11:00 AM - 11:55 AM
Tuesday 10:00 AM - 11:55 AM

This semester we intend to be back to our normal in person  course.  Please keep and eye on the Schedule page for the latest updates. 
Textbook We will be using:

1. Michael J Quinn, Parallel Computing, Tata McGraw-Hill
2. Joseph Jaja, An Introduction to Parallel Algorithms, Addison Wesley.
Coursework The coursework for all students consists of semi-regular quizzes, some take-home assignments, tutorials.

Communication We will update the course schedule regularly throughout the course.

Regular Class Updates

  • Note that you NEED TO join the Microsoft teams classroom titled "Parallel Algorithms" for this course. We will also share the materials or lecture  notes via Microsoft Teams. Drop the instructors/TAs an email ASAP if you cannot access the Microsoft teams classroom.
  • Link: Microsoft Teams Link for Class 22
  • We will also include links to pre-recorded lectures in the "Required Readings and Videos" section of the course schedule. Please check it regularly.

Assignment / Scribes / Quizzes

  • Current plan is to both distribute and collect the regular assignments via Microsoft teams. Please join the course there.

    For assignments, linux based systems are recommended.


General discussion

  • We'll use Microsoft Teams for general discussion and questions about course material.
  • You should already have the account username and password to log into Microsoft teams. If you cannot access the  Microsoft teams classroom titled "Parallel Algorithms" please let the instructors know as soon as possible.
  • If you need to reach out to the instructors (e.g., pertaining to an illness or other events that might be impacting your performance in class), please send a private chat on Microsoft Teams visible only to the instructors. Please use the Microsoft teams chatroom (and channels) to discuss publicly with your peers in real-time.
  • Please try to keep all course-related communication to Microsoft Teams rather than email.
Late policy We will accept the take home assignments/scribes 24 hours late with a 15% penalty. Assignments more than a day late will not be accepted without a previously approved extension.

Of course, in exceptional circumstances related to personal emergencies, serious illness, wellness concerns, family emergencies, and similar, please make the course staff aware of your situation and we will do our best to find a mutually agreeable solution.

Grading

Your course grade will be (tentatively) calculated as follows:
Mid Sem Exam
20%
End  Sem Exam
50%
Assignments, Class Test
30%


Honor code

You are permitted to talk to the course staff and to your fellow students about any of the problem sets. Any assistance, though, must be limited to discussion of the problem and sketching general approaches to a solution. Each student must write out his or her own solutions to the problem sets. Consulting another student's solution is prohibited, and submitted solutions may not be copied from any source. These and any other form of collaboration on assignments constitute cheating.

No collaboration is permitted on quizzes or assignments. All work submitted for the project must properly cite ideas and work that are not those of the students in the group. Simply stated, feel free to discuss problems with each other, but do not cheat. It is not worth it, and you will get caught. In that case, we will be forced to award you no marks for that assignment/quiz/project, take away 50% of your total final marks and you will risk deregistration.

Wellness

If a personal emergency comes up that might impact your work in the class, please let the instructors know via a private chat message (to all the course instructors) so that the course staff can make appropriate arrangements. We are going through unprecedented times and circumstances can sometimes be very overwhelming, and all of us benefit from support during times of struggle. You are not alone.

Important Links