# Parallel and Distributed Programming:

summer 2016/2017

## course materials

lectures notes are on moodle.

## schedule

The plan of lectures will be modified and updated. The mid-term and project due dates are fixed.

week | lectures | labs | tutorials |
---|---|---|---|

27/02-3/03 | intro | mutex | mutex |

6-10/03 | LTL 1, promela 1 | (no class) | (no class) |

13-17/03 | LTL 2, promela 2 | promela 1 | ltl 1 |

20-24/03 | efficiency: distributed 1 | promela 2 | ltl 2 |

27-31/03 | MPI, rendez-vous | promela 3 | ltl 3 |

3-7/04 | efficiency: distributed 2 | MPI 1 | rendez-vous 1 |

10-14/04 | tuples, PRAM 1 | no class (OI) | rendez-vous 2 |

18/04 | Promela project due | ||

17-21/04 | Spring break (19/04 is Friday) | ||

24-28/04 | PRAM 2 | MPI 2 | rendez-vous 3 / tuples 1 |

1-5/05 | May break | ||

8-12/05 | CUDA, cilk | MPI 3 | tuples 2 |

15-19/05 | mid-term (15/05, 9:00) | CUDA 1 | PRAM |

22-26/05 | scheduling | CUDA 2 | cilk 1 |

28/05 | MPI project due | ||

29/05-2/06 | map-red, distr alg | CUDA 3 | cilk 2 |

5-9/06 | byzantine | map-red 1 | ring/grid |

12-16/06 | summary | map-red 2 | byzantine |

## grading

The final score is computed from the sum of labs (0-40), the mid-term exam (0-20) and the final exam (0-40). We use the standard scale (51-60: 3.0; 61-70: 3.5; 71-80: 4.0; 81-90: 4.5; 91-100: 5.0).

However, you fail the course (with 2.0) if you have less than 21 points from the labs, or if any of the two large lab projects is scored below 7 points. There is no minimal score from the final exam.

You need to be present (physically) during the mid-term (if you want to take it) and the final exam. This is a course for full time students; we will not organize remote exams.

You can use your notes during the mid-term exam. However, the final exam is without notes.

There is no make-up mid-term exam, as, in this edition, we do not require minimal score for the mid-term.

Labs are scored based on two large projects (20 points each) and 12 small exercises from which you get 12 points in total. The total lab score is at most 40 points (so the small exercises complement the points you might loose on the large projects).

You must get at least 7 points from each large project, otherwise you fail the course.

**The due dates for the large projects are strict**. If you're late, your score will be reduced by 1 point for every 12 hours (i.e.: if you're late by 2h, we subtract 1 point from your score; if you're late by 25h, we subtract 3 points). We postpone the deadline only due to unforeseen, rare problems.
We are not malicious - we know that if you have more time, you usually end up with a better project - so we want to be fair towards those who deliver in time.

**You cannot make the large projects during the summer break.** The make-up due dates are set to one week after the original due dates; if you submit your project in the make-up due date, your project will be scored at most 7 points.

The small exercises are given during the labs. You need to show the results (or send them to your tutor) at the latest before the midnight on day you take your labs. We accept solutions only from students who are present during the class - so it pays off to attend!

If you repeat this course, you can have your labs score or your mid-term exam score copied. Contact the lecturer before **15th March**.

To get your grade in June 2017, pass the final in the first attempt; otherwise you'll get your grade in September 2017.