Webinar
Julia for HPC

In this webinar we will provide an overview of Julia, including a number of more in-depth talks by Julia experts and users. Julia is a programming language that combines high-level features with high performance. Organisation: SURF and Netherlands eScience Center. 

Verschillende iconen met focus op icoon webinar

Abstracts

A brief introduction to Julia

Abel Soares Siqueira (Research Software Engineer @ Netherlands eScience
Center)

I will talk about why I chose Julia for my research in nonlinear optimization 8 years ago and why I keep recommending it.

Pluto.jl - Reproducible & Interactive IDE

Fons van der Plas (Educational Technology Consultant @ MIT)

Pluto.jl is a new notebook programming environment for Julia, designed to be easy, interactive and reproducible! In this talk I will introduce Pluto.jl and explain how we were able to solve common pain points of
traditional notebooks, including reproducibility and interactive visualisation.
https://github.com/fonsp/Pluto.jl

GPU computing in Julia: From ease-of-use to high-performance with CUDA.jl

Tim Besard (Software Engineer @ Julia Computing)

Julia is a compiled high-level language, which makes it well-suited for programming GPUs and other accelerators. In this talk, I'll demonstrate our support for NVIDIA GPUs with CUDA.jl. This package both makes it possible to program GPUs without any relevant experience, as well as provides the tools for more seasoned programmers to optimise their applications for the maximum performance.

Julia for Scientific High-Performance Computing

Carsten Bauer (Computational physicist and HPC advisor @ Paderborn Center for Parallel Computing (PC2))

With its dynamic and compiled nature, the Julia programming language has evolved into a modern alternative for scientific computing. Julia’s single-language paradigm, and its proven track record at achieving high-performance without sacrificing user productivity, makes it a viable single-language alternative to the existing  composition of high-performance computing (HPC) languages (Fortran, C, C++) and higher-level languages (Python, R, Matlab) suitable for numerical simulation and data analysis alike. Julia’s rapid growth in language
capabilities, package ecosystem, and community make it a promising new universal language for HPC similar to C++ or Python. In this talk, I will share my experiences and views on Julia for HPC both as a computer scientist and as an HPC advisor. I will highlight Julia as a powerful programming model for HPC and will discuss the current state of the language and its ecosystem from an HPC perspective.

Simulation of atmospheric turbulence with MicroHH.jl

Chiel van Heerwaarden (Associate Professor in Meteorology @ Wageningen
University)

Turbulence in the atmosphere is often studied using 3D simulations as a virtual laboratory. Most experiments require code modification by users, but this is hard, because most codes are written in low-level languages as Fortran and C++. MicroHH.jl, a Julia port of the dynamical core of C++/CUDA MicroHH, has been designed to solve this problem. It is built on MPI.jl, LoopVectorization.jl, CUDA.jl, and HDF5.jl for the IO. Interaction with running simulations is made possible via simple user scripts.