Valentin Churavy

PhD Student at MIT


Sessions

07-20
14:00
180min
GPU programming in Julia
Valentin Churavy, Tim Besard, Julian P Samaroo

In this workshop, we will demonstrate three major packages for programming GPUs in Julia (CUDA.jl, AMDGPU.jl, oneAPI.jl), and the different programming models, tools and APIs that these packages support.

Green
07-28
17:00
30min
Enzyme.jl -- Reverse mode differentiation on LLVM IR for Julia
Valentin Churavy, William Moses

Enzyme (https://enzyme.mit.edu) is a reverse mode auto-differentiation tool that performs automatic differentiation over LLVM intermediate representation and synthesis high-performance reverse-mode functions. We will discuss how Enzyme.jl integrates with the Julia compiler and special considerations required for differentiating a dynamic programming language such as Julia.

Green
07-29
13:00
10min
Scaling of Oceananigans.jl on multi GPU and CPU systems
Valentin Churavy, Ali Ramadhan, Chris Hill, Francis Poulin, Gregory Wagner

This talk will present scaling and performance of the Oceananigans.jl ocean model on CPU and GPU systems. Oceananigans.jl is an all Julia code that is designed to study geophysical fluids problems ranging from idealized turbulence to planetary scale circulation. It uses the KernelAbstractions.jl package to support CPU and GPU single address space parallelism. It uses MPI.jl, to support multi-node and multi-GPU parallelism. MPI.jl is used both directly and through PencilArrays.jl.

Blue
07-29
16:30
45min
Julia in High-Performance Computing
Valentin Churavy, Simon Byrne, Carsten Bauer, Michael Schlottke-Lakemper

The JuliaHPC community as a group maintains the infrastructure for using Julia in high-performance computing. In this BoF we invite newcomers, application developers, and maintainers to join us for an informal discussion around the state of Julia in HPC.

BoF/Mini Track
07-29
17:15
45min
GPU programming in Julia BoF
Valentin Churavy, Tim Besard, Julian P Samaroo

This is a BoF to talk about the various GPU programming packages in Julia:

  • CUDA.jl
  • AMDGPU.jl
  • oneAPI.jl
  • KernelAbstractions.jl
  • GPUArrays.jl
  • GPUCompiler.jl
  • ...

If you have any thoughts or questions about these packages, or other approaches to GPU programming in Julia, please join this BoF to chat about it!

BoF/Mini Track