Julia for High-Performance Scientific Computing
Overview
Welcome to the online workshop on Julia for High-Performance Scientific Computing on Dec. 9-12 (2024). In this four-half-day course, we will start with the basic features of Julia, and then delve into the specific topics on writing performant Julia code, multithreading, and distributed computing. Additionally, we will focus on Julia programming on HPC clusters using GPU accelerators, and the interfacing of Julia with other programing languages (C/C++, Fortran, Python, etc.). We will keep a practical focus on useful techniques and mindsets via extensive code examples.
Who is this workshop for?
This workshop is intended for researchers who are familiar with one or more programming languages like Python, R, Matlab, C/C++ or Fortran but also would like to learn an exciting modern high-performance programming language. Therefore whether you’re a seasoned programmer looking to optimise your code or a newcomer to the field, this workshop offers valuable insights into the world of high-performance programming using Julia.
This workshop is an interactive online event, featuring live coding, demos, and practical exercises. We aim to equip you with the tools and knowledge to write efficient, high-performance code using Julia.
Join us for this exciting journey into the world of high-performance programming!
Prerequisites
- Experience with one or more programming languages.
- Familiarity with the use of Linux and its shell to build and run programs.
- Participants are expected to install Julia, VSCode and Zoom before the workshop starts. Detailed instructions will be provided ahead of the workshop.
Key takeaways
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.
Regulations
Due to EuroCC2 regulations, we CAN NOT ACCEPT generic or private email addresses. Please use your official university or company email address for registration.
This training is for users who live and work in the European Union or a country associated with Horizon 2020. You can read more about the countries associated with Horizon2020 HERE