Available courses

Beginner

AI/ML
5 Lessons

Beginner

In collaboration with NVIDIA and UCL, DiRAC is proud to introduce a new self-paced training course: ‘Many Ways to GPU’.  Designed for researchers with some programming experience on HPC, this course offers a comprehensive introduction to GPU programming and provides the practical skills needed to transition research workflows from CPU-based to GPU-accelerated computing.    By the end of the course, you will be able to:  Understand what a GPU is and how it differs from a CPU  Use NVIDIA’s powerful profiling tool, Nsight Systems  Write basic C++ or Fortran programs using standard syntax  Integrate OpenACC directives into C/C++ or Fortran code  Apply OpenMP directives within C/C++ or Fortran code  Develop CUDA kernels for use in C/C++ or Fortran applications    The course includes:  Interactive Jupyter notebooks featuring worked examples and hands-on exercises to build your confidence  Built-in self-assessments to help you track your progress and reinforce key learning outcomes  We hope this carefully designed course enhances your research and accelerates your journey into GPU development options.

11 Lessons

Beginner

As part of the HAI-End project, Durham University has developed this set of revision materials to support training events on performance analysis in high-performance computing. These mini-lectures are designed to help participants quickly revisit essential terminology and foundational concepts whenever needed, ensuring that everyone remains on the same page during workshops and practical sessions. You are encouraged to explore these lectures and accompanying exercises to deepen your understanding of key topics such as the von Neumann architecture, cache memory, vectorisation, Flynn's Taxononomy, MPI, GPUs, the Roofline model, shared memory parallel paradigms, and both strong and weak scaling. This course is designed to be flexible, allowing you to build your own personalised learning pathway. You may start from any topic of interest. Based on your choice, the knowledge graph available will recommend prerequisite sessions you should be familiar with, as well as suggest subsequent sessions to continue your learning journey effectively. By engaging with this content, you will strengthen your grasp of these fundamental building blocks, enabling a clearer and more comprehensive context for analysing the performance of your code.

11 Lessons


Site announcements

There are no discussion topics yet in this forum