15-418/15-618: Parallel Computer Architecture and Programming, Spring 2024: Assignments

Programming Assignments

The programming assignments are the heart of this course. Much of what you learn in this course will be through completing these assignments.

  • All programming assignments are due 11:59pm on the due date shown.
  • The late penalty is 10% per day.
  • Each student has 5 late-day points for use during the semester. Use them wisely.
  • A one-person team can extend a programming assignment by one day using one point.
  • A two-person team can extend a programming assignment by one day using two point (either one from each student, or two from a single student).
  • You can submit assignments at most 3 days late.
  • All assignments are handed out via GitHub and turned in using Autolab and Gradescope.

Programming Assignment Schedule

Lab  Out Name Due

Assignment 1 Fri. Jan 19 Exploring parallel computing   Mon. Jan 29
Assignment 2 Mon Jan 29 GPU programing in CUDA Mon Feb 12
Assignment 3 Mon Feb 12 Parallel VLSI Wire Routing via OpenMP Mon Feb 26
Assignment 4 Mon Feb 26 Parallel VLSI Wire Routing via MPI Mon Mar 18

Written Assignments

The purpose of the written assignments is to help you prepare for the exams.
  • Written assignments will be distributed and handed in via Canvas.
  • Written assignments are to be completed individually (not in groups).
  • Because peer grading is done anonymously, please do not put your name on your assignment writeup.
  • There are no late days for written assignments (they must be submitted on time).
  • There are two deadlines for each written assignment:
    • the deadline for submitting your answers; and
    • the deadline for completing your peer grading of other written assignments.
  • To be eligible to participate in peer grading, you must submit your answers on time.
  • By 9am on the morning after you submit your answers, Canvas will assign you three randomly-chosen peers for whom you will provide grading feedback.
  • Before you begin peer grading, study the solutions to the assignments very carefully: a significant part of the learning experience for these written assignments is learning the solutions well enough to be able to grade other people's assignments effectively.
  • Use the rubric (provided in Canvas) to assign points; in addition, provide constructive written feedback.
  • To receive any credit on this assignment, you must do a reasonable job of providing this peer feedback (including both scores and written feedback).
  • Assuming that you do submit your assignment and provide your peer reviews on time, your score will be calculated as follows:
    • 1/3: submitting a reasonable set of solutions on time
    • 1/3: doing a reasonable job of peer grading others
    • 1/3: average score assigned to you by your peers

Written Assignment Schedule

Written Assignment  Out Solutions Due Peer Grading Due

Written Assignment 1 Fri. Feb 2 Wed. Feb 7 Tue. Feb 13
Written Assignment 2 Fri. Feb 9 Wed. Feb 14 Tue. Feb 20
Written Assignment 3 Mon. Mar 11 Tue. Mar 19 Tue. Mar 26
Written Assignment 4 Wed. Mar 20 Thu. Mar 28 Tue. Apr 2