Loading Events

« All Events

Julia for High-Performance Scientific Computing

October 10 @ 09:00 October 13 @ 12:00 CEST

Julia is a modern high-level programming language that is fast (on par with traditional HPC languages like Fortran and C) and relatively easy to write like Python or Matlab. It thus solves the “two-language problem”, i.e. when prototype code in a high-level language needs to be combined with or rewritten in a lower-level language to improve performance.

Although Julia is a general-purpose language, many of its features are particularly useful for numerical scientific computation, and a wide range of both domain-specific and general libraries are available for numerical modelling and simulation.

The language supports parallelization for both shared-memory and distributed HPC architectures, and native Julia libraries are available for running on GPUs from different vendors.

This online workshop will start by briefly covering the basics of Julia’s syntax and features, and then introduce methods and libraries which are useful for writing high-performance code for modern HPC systems. After attending the workshop you will: 

  • Be comfortable with Julia’s syntax, in-built package manager, and development tools.
  • Understand core language features like its type system, multiple dispatch, and composability.
  • Be able to write your own Julia packages from scratch.
  • Have an overview of Julia’s parallelization and GPU-porting strategies and the know-how to get started using them.
  • Be familiar with crucial Julia libraries for scientific modelling, visualization, and machine learning.


The workshop is intended for researchers who are familiar with one or more other languages like Python, R, Matlab, C/C++ or Fortran but would like to learn an exciting modern high-performance language.

Basic experience with working in a terminal is also beneficial. Participants are expected to install Julia, VSCode and Zoom before the workshop starts.

Preliminary Agenda

Day 1 

Introduction to Julia syntax and features.

Day 2

Running on a cluster

Writing performant Julia code


Day 3

Distributed computing

Message passing

Day 4

GPU computing


Please register by following the link https://events.prace-ri.eu/event/1512/registrations/1104/.


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_e