Juliacon 2024

Ivan Utkin


Sessions

07-09
13:30
180min
Hands-on with Julia for HPC on GPUs and CPUs
Carsten Bauer, Ludovic Räss, Johannes Blaschke, Ivan Utkin

Julia offers the flexibility of a high-productivity language while providing control, performance, and compatibility with high-performance computing (HPC) hardware. This workshop demonstrates how Julia makes modern HPC accessible. It covers resource configuration, distributed computing, code optimization for CPUs and GPUs, and versatile workflows. Participants will have the opportunity to experience it firsthand with a hands-on session on a GPU-powered supercomputer.

Accelerated & large-scale computing
TU-Eindhoven -1.350
07-10
17:00
30min
FastIce.jl: a massively parallel ice flow model running on GPUs
Ludovic Räss, Samuel Omlin, Mauro Werder, Ivan Utkin

We introduce FastIce.jl, a novel ice flow model for massively parallel architectures, written in Julia. Leveraging GPUs (Nvidia, AMD) and supporting distributed computing through MPI.jl, FastIce.jl includes a thermo-mechanically coupled Full-Stokes ice flow model. We present the performance testing of FastIce.jl in single-node and distributed scaling benchmarks on LUMI, the largest European supercomputer.

Accelerated & large-scale computing
For Loop (3.2)
07-12
15:10
10min
Subglacial water flow simulations on GPUs
Ludovic Räss, Mauro Werder, Ivan Utkin, Annegret Pohle

Modeling subglacial water flow and its link to ice dynamics is necessary for accurate predictions of ice sheet response to a warming climate. Here we present a re-implementation of the widely used GlaDS model to run on GPUs. We show-case the matrix free implementation which leverages the full capabilities of the GPU, present model runs of test cases, show the model's scalability and provide an outlook towards inversion schemes and high-resolution continental-scale applications.

Earth and climate science in Julia: Power to the user
While Loop (4.2)
07-12
15:50
10min
Sustainable Development of Stencil-based HPC Applications
Ludovic Räss, Samuel Omlin, Ivan Utkin

We present a successful approach for a sustainable development of stencil-based HPC applications in Julia. The approach includes automatic performance optimization for hardware-agnostic high-level kernels, data layout abstractions enabling memory layouts optimized per backend, and GPU-aware inter-process communication that is automatically hideable behind computation. We demonstrate on multiple examples near optimal performance and scaling on thousands of GPUs.

Accelerated & large-scale computing
Else (1.3)