Introduction to Julia
Julia is a modern dynamic programming language, particularly well suited for numerical computing and HPC. From single-core to distributed computing, this four-day course will go into the details of how to effectively write high-performance code in Julia while avoidings common pitfalls. It will cover the fundamentals of the language (e.g. type inference, just-ahead-of-time compilation), performance optimization techniques, task-based multithreading, as well as distributed computing (e.g. MPI). In addition, attendees will also learn how to offload computations to NVIDIA GPUs in Julia.
Target audience:
Students and researchers who are interested in numerical computing who want to learn how to write high-performance code using the Julia programming language.
Prerequisites:
Attendees are expected to have basic programming experience and familiarity with UNIX/Linux environments. Previous experience with the Julia language and/or High-Performance Computing (in any language) is beneficial.
Course format:
The four-day course starts on Tuesday, October 15, and runs until Friday afternoon.
The course is designed to be "hands-on". All lecture parts will be using Jupyter notebooks (no slides) so that participants can interactively explore the language. In addition, there will be dedicated exercise sessions each day in which participants can test and apply the concepts discussed.
Programme
Four day course
15-18 October
30 max. participants
Teacher:
Carsten Bauer
Costs:
€ 350,-
€ 150,- for BSc and MSc students.
€ 50,- for members of DCSE
including lunch and course materials, free for DCSE members.
Location:
TBD
Prerequisites:
Basic programming experience and familiarity with UNIX/Linux environments. Previous experience with the Julia language and/or High-Performance Computing (in any language) is beneficial.