TDDD56 Multicore and GPU programmingInformation page for the CPU and GPU lab work and lessons |
|
Lab SeriesPlease register for the labs via webreg by friday 4/11. Webreg will be opened at course start. Presence in lab sessions is mandatory. Lab deadlines
CPU-labs (Labs 1, 2, 3): last CPU lab session of your group, 24/25 nov 2022 (soft deadline),
16 dec 2022 10:00 (hard deadline) |
|
Slides and general infoDownload the slides of lesson 1. (last updated 2022-11-04) Download the slides of lesson 2. (last updated 2021-11-16) |
|
Getting started with tools used in laboratories |
|
Lab0: Introduction to C and the pthread APIA quick introduction by example to C syntax, data type and their use, functions, modules, as well as spawning and waiting for threads. Find another introduction from former Lab 0 of the course "Concurrent programming and Operating Systems" (TDDB68), which include more C-related issues such as pointer management. |
|
Lab work |
|
Lab1: The Mandelbrot set and load balancingParallelize a generator of visual representation of the Mandelbrot set, fractals, observe load-balancing issues and implement a solution to them. [source files] (Last updated 2018-11-12, no changes for 2022) [instructions] (Last updated 2020-11-10) |
|
Lab2: Non-blocking stackImplement and measure the performance of a non-blocking, Treiber stack [source files] (Last updated 2018-11-16, no changes for 2022) [instructions] (Last updated 2020-11-18) |
|
Lab3: High-level parallel programmingTry out high-level parallel programming with the data-parallel SkePU skeleton programming framework. Use the skeletons to implement image filters, including a median blur filter.[source files] (Last updated 2022-11-17) [instructions] (Last updated 2020-11-25) [SkePU user guide] (2020) [slides] (Last updated 2020-11-18) |
|
Lab 4: CUDA 1Lab material (from ISY) |
|
Lab 5: CUDA 2Lab material (from ISY) |
|
Lab 6: OpenCLLab material (from ISY) |
Page responsible: Christoph W Kessler
Last updated: 2022-11-17