Parallel computing on DelftBlue 13 December

parallel-delftblue

13 december 2024 14:00 - Locatie: Penguinlab 2e etage, gebouw 36 (EWI), Mekelweg 4, Delft | Zet in mijn agenda

This is an introductory course to programming for the DelftBlue supercomputer. It introduces the main concepts of efficient and parallel computing with examples using Python.

This is an introductory course to programming for the DelftBlue supercomputer. It introduces the main concepts of efficient and parallel computing with examples using Python. While Python is very popular nowadays, the language’s focus on convenience can easily compromise efficiency compared to traditional HPC languages like C, C++ or Fortran. This course summarizes these pitfalls and how to mitigate them, and introduces simple techniques for parallelizing your program.

At the end of the day, you should be able to

  • Describe how a program is executed on a supercomputer including scheduling, disk storage, shared vs. distributed memory, multi-core CPUs and GPU accelerators;
  • Find hotspots determining the runtime of your Python program
  • Parallelize a Python program using a combination of
    • optimized libraries,
    • numba just-in-time compilation,
    • numba parallel loops,
    • (simple) mpi4py communication routines;
  • Optimize the I/O (disk usage) of your program

Prerequisites

  • Command line and DelftBlue basics
  • Basic Python skills

Python programming language logo

More information

Dancy Bruijnius