NPRG042 Programming in Parallel Environment

Labs

The work in labs focuses on introducing technologies that are subsequently used in home assignments. Therefore, it is widely recommended to attend the labs. Details about labs and seminars will be updated continuously.

Please bring your laptops to the seminar at least in the weeks denoted when a collective lab session takes place.

Both labs and home assignments will require that you familiarize yourselves with our parlab and gpulab clusters and the SLURM management system. See the HPC clusters README. Quick info:

Schedule

Date Topics Details
16.2.2026 Revising parallelism in operating systems and mainstream multicore CPUs slides
23.2.2026 C# .NET Core tasks practice: parallel factorization with visualization lab work, solution
2.3.2026 Assignment #1: C# .NET Parasheet specification
9.3.2026 Intel Threading Building Blocks practice lab work, solution
16.3.2026 Assignment #1 results, Assignment #2: Intel TBB k-means specification
23.3.2026 OpenMP lab work
30.3.2026 Assignment #2 results, Assignment #3: OpenMP edit distance
6.4.2026 Easter Monday
13.4.2026 SYCL (GPGPU), Assignment #3 results, Assignment #4: SYCL simulation
20.4.2026 TBA, possibly consultations
27.4.2026 Spark
4.5.2026 Assignment #4 results, Assignment #5: Spark
11.5.2026 TBA, possibly consultations
18.5.2026 Assignment #5 results, discussion