CSC Summer School in High-Performance Computing About
Updated for 59569d1 (2025-07-03 10:55:49 +0300)

Slides (HTML)

1. Welcome to Nuuksio

1. Introduction to high-performance computing

2. Parallel computing

3. Working in supercomputers

Case study: Heat equation

1. Introduction to MPI

2. Point-to-point communication I

3. Point-to-point communication II

4. Non-blocking communication

5. Collective communication I

6. Collective communication II

7. User-defined communicators

8. Further MPI topics

Parallel debugging

Message Passing Game

Extra: One-sided communication

Extra: Persistent communication

Extra: Process topologies

Extra: User-defined datatypes

1. Introduction to hybrid programming

2. Introduction to OpenMP

3. OpenMP library routines and data sharing

4. OpenMP reductions and execution control

5. OpenMP tasks

6. Using MPI with OpenMP threads

1. Input/Output (I/O) in HPC

1. Introduction to GPU programming

2. HIP, CUDA and GPU kernels

3. Memory Hierarchy and Memory Accesses in GPUs

4. Streams, events, and synchronization

5. Memory allocations, access, and unified memory

6. Kernel optimisation

7. OpenMP offloading

8. SYCL Essentials

9. Multi-GPU programming and HIP/OpenMP/SYCL + MPI

1. Introduction to AI

2. Scaling PyTorch Models: Single vs Multi-GPU Training and Techniques

3. Understanding GPU Computational Capabilities

1. Application design & HPC deployment

1. Application performance

1. Closing


Slides (PDF)

1. Welcome to Nuuksio

1. Introduction to high-performance computing

2. Parallel computing

3. Working in supercomputers

Case study: Heat equation

1. Introduction to MPI

2. Point-to-point communication I

3. Point-to-point communication II

4. Non-blocking communication

5. Collective communication I

6. Collective communication II

7. User-defined communicators

8. Further MPI topics

Parallel debugging

Message Passing Game

Extra: One-sided communication

Extra: Persistent communication

Extra: Process topologies

Extra: User-defined datatypes

1. Introduction to hybrid programming

2. Introduction to OpenMP

3. OpenMP library routines and data sharing

4. OpenMP reductions and execution control

5. OpenMP tasks

6. Using MPI with OpenMP threads

1. Input/Output (I/O) in HPC

1. Introduction to GPU programming

2. HIP, CUDA and GPU kernels

3. Memory Hierarchy and Memory Accesses in GPUs

4. Streams, events, and synchronization

5. Memory allocations, access, and unified memory

6. Kernel optimisation

7. OpenMP offloading

8. SYCL Essentials

9. Multi-GPU programming and HIP/OpenMP/SYCL + MPI

1. Introduction to AI

2. Scaling PyTorch Models: Single vs Multi-GPU Training and Techniques

3. Understanding GPU Computational Capabilities

1. Application design & HPC deployment

1. Application performance

1. Closing

Download a zip file containing all slides.