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 8/11/2024. 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, 27/29 nov 2024 (soft deadline),
19 dec 2024 10:00 (hard deadline) |
|
Slides and general infoDownload the slides of lesson 1. (last updated 2023-11-03) Download the slides of lesson 2. (last updated 2023-11-14) |
|
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 2023) [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 2023) [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 2023-11-14) |
|
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: 2024-11-04