Loading Events

« All Events

  • This event has passed.

GPU Programming: Why, When and How?

9 Jun 2023 @ 09:00 - 12 Jun 2023 @ 16:00 CEST

This is a two day online course given on Friday 9th and Monday 12th of June.

On June 16 there will additionally be an optional mini-hackathon event where you are invited to bring your own code, that you want to port to GPUs, and get expert help from mentors.

Graphical processing units (GPUs) are the workhorse of many high performance computing (HPC) systems around the world. The number of GPU-enabled supercomputers on the Top500 has been steadily increasing in recent years and this development is expected to continue. In the near future the majority of HPC computing power available to researchers and engineers is likely to be provided by GPUs or other types of accelerators. Programming GPUs and other accelerators is thus increasingly important to developers who write software which is executed on HPC systems.

However, the landscape of GPU hardware, software and programming environments is complicated. Multiple vendors compete in the high-end GPU market, each vendor provides their own software stack and development toolkits, and even beyond that there is a proliferation of tools, languages and frameworks that can be used to write code for GPUs. It can thus be difficult for individual developers and project owners to know how to navigate this landscape and select the most appropriate GPU programming framework for their projects based on the requirements of a given project and technical specifics of any existing code.

This workshop is based on a multilateral collaboration between GPU programming specialists from KTH in Sweden, HPC2N in Umeå, CSC in Finland, NRIS in Norway, Aarhus University in Denmark, Vilnius University in Lithuania, Aalto University in Finland, and ENCCS. It is meant to help both software developers and decision makers navigate the GPU programming landscape and make more informed decisions on which languages or frameworks to learn and use for their projects.

Aim of the workshop

  • Understand why and when to use GPUs.
  • Become comfortable with key concepts in GPU programming.
  • Acquire a comprehensive overview of different software frameworks, what levels they operate at, and which to use when.
  • Learn the fundamentals in at least one framework to a level which will enable you to quickly become a productive GPU programmer.


This workshop is most relevant to researchers and engineers who already develop software which runs on CPUs in workstations or supercomputers, but also to decision makers or project managers who don’t write code but make strategic decisions in software projects, whether it’s in academia, industry or the public sector.

Familiarity with one or more programming languages like C/C++, Fortran, Python or Julia is recommended.


Friday 9 June 2023

Monday 12 June 2023


Registrations are now closed.

Deadline: 26 May 2023

Mini-hackathon on June 16

As a follow-up to the training workshop on June 9 and 12, you have the option to attend an online "mini-hackathon" on June 16 from 9:00-15:00. If you have a code that you would like to port to GPUs with the skills you learned during the workshop, you are invited to attend the mini-hackathon and get help from experts. To register for the mini-hackathon please additionally fill out the registration form at https://events.prace-ri.eu/event/1502/registrations/1102/


For any questions contact us at training@enccs.se


This training is intended for users established in the European Union or a country associated with Horizon 2020. You can read more about the countries associated with Horizon2020 here https://ec.europa.eu/info/research-and-innovation/statistics/framework-programme-facts-and-figures/horizon-2020-country-profiles_en