Schedule
Spring 2026
Where, when, and how
- Lectures and exercises are on Fridays in room I0.01 (13:00–15:00) and I0.03 (15:00–17:00).
- Lecture recordings will be available on Canvas for working students or if you are absent due to illness.
- Exercises are available on the website, via the link on Canvas. Solutions will be published after each session on Canvas.
- The exercises are no longer in a computer room, you are expected to bring your own laptop. VUB has some support programmes for buying or renting a laptop.
Lecture topics
| Date | Topic |
|---|---|
| 13 Feb | Introduction, multicore hardware, basic terminology, laws of parallel programming |
| 20 Feb | Erlang: sequential programming, concurrent programming |
| 27 Feb | Erlang: distributed programming, fault tolerance |
| 6 Mar |
Erlang: the actor model, comparison with other frameworks; GPU Programming using OpenCL: introduction |
| 13 Mar | GPU Programming using OpenCL: memory hierarchy |
| 20 Mar | GPU Programming using OpenCL: optimization |
| 27 Mar |
GPU Programming using OpenCL (conclusion); Clojure: introduction, sequential programming |
| 3 Apr | Clojure: parallelism using futures, concurrency using atoms, agents, STM |
| 10 Apr | (Spring break) |
| 17 Apr | (Spring break) |
| 24 Apr | Benchmarking: approach, pitfalls, statistics, reporting |
| Week of 1 May | (To be determined) |
| 8 May | Clojure: software transactional memory |
| 15 May | Clojure: software transactional memory |
| 22 May |
Communicating Sequential Programming and channels; Categories of concurrency models (task vs. data parallelism, message passing vs. shared memory) |