Distributed and Parallel Programming

6 EC

Semester 1, period 2

5062COPP6Y

Owner Bachelor Informatica
Coordinator dr. Zhiming Zhao
Part of Bachelor Informatica, year 2

Course manual 2021/2022

Course content

Distributed and Parallel Programming (DPP) is a course for the second-year bachelor Informatica. During the past years, DPP (was called Concurrency and Parallel Programming before 2021) delivered a spectrum of up-to-date technical topics across both parallel and distributed domains and attracted lots of interest from students. In DPP, students will learn to write programs in various emerging architectures and programming paradigms, including multi-core, cluster, Cloud, and decentralized environments. Students will learn to reflect, design, and use parallel and distributed systems. The course is structured in 5 chapters:

  1.  Systems Architecture and Performance
  2. Parallel and distributed programming 
    • Multi-threading
    • Distributed Programming 
    • GPU Programming 
  3. Big Data systems 
  4. Decentralized systems
  5. Applications

Study materials

Other

  • Online study material (Canvas)

Objectives

  • Explain the taxonomy of parallel and distributed systems; describe and explain the role and functionality of the different components that appear in these computing systems
  • Draw a conclusion from different studies by analyzing them critically
  • Program small-scale applications using the main concepts of parallel processing and programming models using Pthreads and OpenMP
  • Describe and explain the differences between state-of-the art programming models for parallel and distributed systems
  • Getting familiar with and able to program basic applications using modern big-data platforms
  • Apply basic performance analysis methods for parallel and distributed systems and evaluate their results
  • Getting familiar with and able to program basic applications using modern P2P and decentralised systems

Teaching methods

  • Hoorcollege
  • Laptopcollege
  • Lecture
  • Computer lab session/practical training

The labs are split in three groups. We encourage the students to come to the lab for help and feedback. Support outside lab hours is limited to urgent issues and priority is given to the students who will attend the labs. Absence during the lab will be recorded.

Learning activities

Activity

Hours

Hoorcollege

28

Laptopcollege

24

Tentamen

3

Werkcollege

2

Self study

111

Total

168

(6 EC x 28 uur)

Attendance

Programme's requirements concerning attendance (OER-B):

  • For practical trainings and tutorials/seminars with assignments attendance is, in principle, obligatory. When students do not meet the requirements for attendance, this may lead to not finishing a course with a pass mark.

Assessment

Item and weight Details Remarks

Final grade

5 (50%)

Lab assignment

3 (30%)

Literature study

Double bachelor students do not have to do the Literature study component.

2 (20%)

Final Exam

Final exam can be retaken separately
  • Upload reports + code for each assignment by the fixed DEADLINE. The submission will be closed immediately after the deadline.
  • Present your solution to the TA (demonstrates the code works, explain your solution)
  • There will be NO Extensions for the submission deadline. The students have to contact their studieadviseur to initiate the procedure for extending the deadlines.
  • A Solution of the assignments will be discussed during the Lab hours, after the deadline
  • Grading will be completed within two weeks; group feedback will be given by the TA during the Lab hours and will reflect the most common errors that have been noticed when correcting your assignments. Personal feedback can will also be given during the Lab hours
  • Assignment will be done on the Distributed ASCI super computer  (Links to an external site.)Links to an external site.. There are rules for using DAS4, there will be a short tutorial on the second lab please try to be there
  • All the assignments will be checked for plagiarism code and reports so be very careful when using material from the Internet or any third party sources, appropriate citations MUST be added to both your code and reports.
  • If you miss the tutorial you can read the DAS4/5 usage policy (Links to an external site.)Links to an external site. before using the system 

Fraud and plagiarism

Over het algemeen geldt dat elke uitwerking die je inlevert ter verkrijging van een beoordeling voor een vak je eigen werk moet zijn, tenzij samenwerken expliciet door de docent is toegestaan. Het inzien of kopiëren van andermans werk (zelfs als je dat hebt gevonden bij de printer, in een openstaande directory of op een onbeheerde computer) of materiaal overnemen uit een boek, tijdschrift, website, code repository of een andere bron - ook al is het gedeeltelijk - en inleveren alsof het je eigen werk is, is plagiaat.

We juichen toe dat je het cursusmateriaal en de opdrachten met medestudenten bespreekt om het beter te begrijpen. Je mag bronnen op het web raadplegen om meer te weten te komen over het onderwerp en om technische problemen op te lossen, maar niet voor regelrechte antwoorden op opgaven. Als in een uitwerking gebruik is gemaakt van externe bronnen zonder dat een bronvermelding is vermeld (bijvoorbeeld in de rapportage of in commentaar in de code), dan kan dat worden beschouwd als plagiaat.

Deze regels zijn er om alle studenten een eerlijke en optimale leeromgeving aan te kunnen bieden. De verleiding kan groot zijn om te plagiëren als de deadline voor een opdracht nadert, maar doe het niet. Elke vorm van plagiaat wordt bestraft. Als een student ernstige fraude heeft gepleegd, kan dat leiden tot het uitschrijven uit de Universiteit. Zie voor meer informatie over het fraude- en plagiaatreglement van de Universiteit van Amsterdam: www.student.uva.nl

Course structure

WeeknummerOnderwerpenStudiestof
1
2
3
4
5
6
7
8

Timetable

The schedule for this course is published on DataNose.

Processed course evaluations

Below you will find the adjustments in the course design in response to the course evaluations.

Contact information

Coordinator

  • dr. Zhiming Zhao

 

  • if you have any problem with the content of the course or lab session that you can solve, please contact immediately one of the TA or the coordinator (Zhiming Zhao) do not wait until the end of the course.

Staff

  • Dr. Adam Belloum
  • Dr. ir. Ana Varbanescu
  • Dr. Zhiming Zhao