CS60027: Parallel Algorithms (LTP: 3-0-0, Credits: 3)   Autumn 2021
       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: 
 Wednesday 11:00 am - 11:55 am
 Thursday 12:00 noon - 12:55 pm
 Friday 8:00 am - 8:55 am
 
 However, this semester we will conduct the course online
              with a mix of live lectures, pre-recorded course videos
              and online doubt clearing sessions. 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/vivas and take-home assignments. 
 
 | 
          
            | Communication | We will update the course
                schedule regularly throughout the course. 
 Live lectures / recordings
 
 
 
                Note that you NEED TO join
                    the Microsoft teams classroom titled "Parallel Algorithms" for this course. We
                  will also share the recordings (as well as recorded
                  lectures) of the lectures via Microsoft Teams. Drop the instructors/TAs an
                  email ASAP if you cannot access the Microsoft teams
                  classroom. 
                Live lectures will be delivered via Microsoft teams.
                  We will use with the "announcements" channel on
                  Microsoft teams for live lecture related announcements. Please check that
                  channel regularly. 
                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
 
 
 
 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
                  "HPCA" 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 calculated as follows:
      
          
          
            | Two short Tests | 30% | 
          
            | Two long Tests 
 | 40% 
 | 
          
            | Assignments 
 | 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