Concurrency

Website:website met extra informatie
Vakcode:INFOB3CC
Studiepunten:7.5 ECTS
Historie:Dit vak is de opvolger van Gedistribueerd programmeren (INFOGDP). Je kunt maar een van beide vakken voor je examen opvoeren
Periode:periode 1 (week 36 t/m 45, dwz 8-9-2011 t/m 11-11-2011; herkansing week 1)
Timeslot:B
Deelnemers:tot nu toe 81 inschrijvingen
Rooster:De officiële roosters staan ook in Osiris
Docenten:Dit is een oud rooster!
vormgroeptijdweekzaaldocent
college          Gerard Tel
 
practicum          Sander van der Hurk
Gerrit Wiltink
Tim van Weelden
   
werkcollege          Sander van der Hurk
Gerrit Wiltink
Tim van Weelden
   
groep 1        Gerard Tel
 
Tentamen:
week: 52wo 24-12-201413.30-15.30 uurzaal: EDUC-GAMMAaanvullende toets
Inhoud:Mutual Exclusion, eigenschappen van objecten (Atomiciteit), Shared Memory, Test-and-set versus Compare-and-swap, de Consensus Hierarchie, Stabilisatie, Combinatoriek en kansrekening, Verwachting, Coupon Collectors, Spin Lock, Monitors, Queues, Parallel Sorteren, Scheduling en Load Balancing, Barriers.
Literatuur:Marice Herlihy en Nir Shavit: The Art of Multiprocessor Programming, Morgan Kaufman Publishers, 2008, isbn=978-0-12-370591-4.
Werkvorm:Hoorcollege (2x p/w) en Werkcollege (1x p/w). Een praktikum bestaande uit drie opgaven (te maken in C#).
Toetsvorm:Je moet voor elke deeltoets en voor het praktikum minstens een 4 halen. De twee deeltoetsen tellen voor 20% en 30% en het praktikum voor 10,20,20% mee in het eindcijfer.
Inspanningsverplichting voor aanvullende toets:Om aan de aanvullende toets mee te mogen doen, moet je voor tenminste een deeltoets al een 4 of hoger hebben, en twee van de drie praktikumopgaven hebben ingeleverd. In de aanvullende toets kun je dan een deeltoets en/of een praktikumopgave doen of verhogen.
Beschrijving:Let op: Als je problemen hebt met de inschrijving in Osiris, probeer dan, je in ieder geval voor het vak in te schrijven zonder praktikum. Iedereen mag aan het vak meedoen.

Multicore machines zijn tegenwoordig overal te vinden. Maar hoe kun je de rekenkracht van meerdere cores gebruiken om jouw rekenklus snel te klaren?

In dit vak wordt bekeken, welke ondersteuning computers en programmeertalen bieden voor multithreaded rekenen, er worden algoritmen voor thread-synchronisatie behandeld (zowel de klassieke locking mechanismen als de moderne wachtvrije methoden), en er wordt gekeken naar parallelle algoritmiek. Doel is, dat je uiteindelijk in staat zult zijn om multithreaded applicaties te ontwikkelen.

Gedistribueerde programma's zijn bij uitstek een deelgebied waarin randomisering wordt toegepast. Daarom is in dit vak ook een stuk kansberekening ondergebracht; deze theorie is natuurlijk ook in andere gebieden van de informatica toepasbaar. Het kunnen berekenen en beredeneren van de gevolgen van random gebeurtenissen is een tweede leerdoel van het vak.

wijzigen?